У меня есть строка в javascript, как `# box2 ', и я просто хочу' 2 'из нее.
Пытался:
var thestring = $(this).attr('href');
var thenum = thestring.replace( /(^.+)(\w\d+\w)(.+$)/i,'$2');
alert(thenum);
Это все еще возвращает # box2 в предупреждении, как я могу заставить это работать?
Это должно приспособить для любого числа длины, приложенного на конце.
javascript
string
numbers
user1022585
источник
источник
Ответы:
Для этого конкретного примера
в общем случае:
Поскольку этот ответ почему-то приобрел популярность, вот вам бонус: генератор регулярных выражений.
источник
"#box2_col3".replace( /^\D+/g, '')
следовало бы показать2
, нет2_col3
.#box2_col3
этот вопрос.#box2_col3
. Но посмотрите на регулярное выражение OP used (\w)(.+$)
), которое ясно указывает на наличие других символов после числа.replace
работать с ведущими числами, используя:,theString.replace(/^.*\D+/g, '');
но решение shiplu.mokadd.im лучше.Вы должны попробовать следующее:
результат
источник
parseInt(txt.match(/\d/g).join(''), 10)
" $ 20.0 ".match(/\d/g).join('')
=> "200" (просто говорю)Я думаю, что это регулярное выражение будет служить вашей цели:
Где
txt
твоя строкаЭто в основном срывает все, что не является цифрой.
Я думаю, что вы можете достичь того же, используя это:
источник
/[^0-9]/g
+1 для читабельности. Также используется с большинством ответов здесь: stackoverflow.com/q/1862130/1066234Попробуйте следующее:
string.replace(/[^0-9]/g, '');
это удалит все нецифровые символы, оставляя только цифры в строкеисточник
/[^0-9]/g
может быть заменен на/[^\d]/g
.Используя функцию соответствия.
jsfiddle
источник
Опробовал все комбинации, приведенные выше с этим Кодексом, и он заработал, была единственная, которая работала над этой строкой ->
(12) 3456-7890
Результат:
"1234567890"
Obs: я знаю, что такая строка не будет на attr, но что угодно, решение лучше, потому что оно более полное.
источник
str.match(/\d+/g).map(Number)
он вернет массивИ это фрагмент, который извлекает цены с валютой и форматированием:
источник
Вы можете использовать отличный метод parseInt
он преобразует первые цифры в число
источник
Для такой строки, как
#box2
, это должно работать:jsFiddle:
источник
Вы можете использовать регулярное выражение.
Это предупредит 2.
источник
С помощью регулярных выражений , как получить числа из строки, например:
результат
myString
"24
"Вы можете увидеть пример этого работающего кода здесь: http://ideone.com/iOCf5G
источник
Вы можете использовать Underscore String Library следующим образом
результат будет: 1
См .: https://github.com/epeli/underscore.string
ДЕМО:
http://jsfiddle.net/abdennour/Vyqtt/
HTML код:
Код JS:
если у вас есть суффикс, как указано ниже:
Вы можете использовать следующую демонстрацию:
http://jsfiddle.net/abdennour/Vyqtt/1/
источник
Вот солт который проверяет отсутствие данных
источник
Используйте этот однострочный код, чтобы получить первое число в строке без ошибок:
источник
пожалуйста, проверьте ниже javaScripts, там вы можете получить только номер
вывод :
1234567789
источник
Вы можете извлечь числа из строки, используя выражение регулярного выражения:
выход: 25933473
источник
источник
Этот ответ охватит большую часть сценария. Я могу через эту ситуацию, когда пользователь пытается скопировать вставить номер телефона
Объяснение:
объединение преобразует и объединяет эти данные массива в одну строку
источник
}
Вы можете сделать это так, а затем вызвать функцию, где вам нужно, с параметром.
источник
Вы можете сделать такую функцию
источник