Регулярное выражение для соответствия нулям - PullRequest
4 голосов
/ 28 ноября 2008

Я ищу шаблон регулярного выражения, который бы соответствовал нескольким различным комбинациям нули, такие как 00-00-0000 или 0 или 0.0 или 00000

Пожалуйста, помогите

Спасибо!

EDIT:

Хорошо, у меня есть веб-сервис, который возвращает мне набор результатов, основываясь на том, что он возвращает мне, и я могу решить, стоит ли отображать результат на странице. Поэтому, если я получу либо 00-00-0000, либо 0, либо 00000, я бы предположил, что данные не были найдены, однако, если они вернут 001, или 000123, или 0356.00 - 1000, или 0.6700, это будет действительно.

Надеюсь, это прояснит мой вопрос

Спасибо

Ответы [ 6 ]

7 голосов
/ 28 ноября 2008

Вам нужно лучше определить, что действительно должно появляться между нулями. Исходя из вашего вопроса, я предполагаю, что вы ищете любое количество нулей с любым числом и группировкой "-" и "." между ними ....

0([-.]?0+)*

Надеюсь, ты не возражаешь, SoapBox:

Исходя из вопроса редактирования, вы ищете любую строку, содержащую ненулевые цифры, поэтому:

[1-9]

или, если механизм регулярных выражений автоматически привязывает начало и конец строки:

.*[1-9].*

может быть лучшим решением.

Это обратный вариант теста, о котором вы просили, но его легко изменить (обратный смысл выражения if).

2 голосов
/ 28 ноября 2008
[^123456789]+

или

[^1-9]+

Я считаю, что это то, что вы ищете ...

1 голос
/ 11 декабря 2017

Я использую этот, начинается и заканчивается с нуля и содержит только нули.

^[0]+$
1 голос
/ 28 ноября 2008

Вот регулярное выражение, которое будет соответствовать тому, что вы просили до сих пор. Если вы хотите, чтобы оно совпадало, укажите, пожалуйста.

0+((\.0+)|(-0+)*)

Это соответствует всем примерам, которые вы просили.

0 голосов
/ 28 ноября 2008

Вы, кажется, слишком усложняете то, что нужно сделать. Вместо того, чтобы искать различные комбинации, которые оказываются всеми нулями, почему бы не использовать регулярное выражение, идентифицирующее данные, которые вас действительно заботят.

Поэтому я предлагаю вам использовать это: [1-9]

Это будет соответствовать, если строка содержит любую ненулевую цифру, если, конечно, вы смотрите на числовые данные.

0 голосов
/ 28 ноября 2008

Попробуйте это:

(00-00-0000|0|0\\.0|00000)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...