正则表达式查找没有小数点的负数
Regular Expression to find negative numbers without decimal point
我有字符串,例如-15
。我只需要找到 -XX
(其中 X
是一个数字),例如没有小数点的 -15
或 -19
(-19.5
,等等)。
我试过这个:
\b-\d{2}\b(?!\.\d)
还有这个:
\b\-\d{2}\b(?!\.\d)
但他们什么也没做。如何制作正则表达式来执行此操作?
您可以使用这个正则表达式:
-\d{2}(?!\.\d)\b
你的那个不工作有 2 个原因。
首先,您需要删除第一个 \b
。
其次,您需要在负前瞻之后移动第二个 \b
。否则它会找到单词边界,然后尝试找到 .
和数字。您希望它找到 .
和后面有单词边界的数字,而不是之前。
我有字符串,例如-15
。我只需要找到 -XX
(其中 X
是一个数字),例如没有小数点的 -15
或 -19
(-19.5
,等等)。
我试过这个:
\b-\d{2}\b(?!\.\d)
还有这个:
\b\-\d{2}\b(?!\.\d)
但他们什么也没做。如何制作正则表达式来执行此操作?
您可以使用这个正则表达式:
-\d{2}(?!\.\d)\b
你的那个不工作有 2 个原因。
首先,您需要删除第一个 \b
。
其次,您需要在负前瞻之后移动第二个 \b
。否则它会找到单词边界,然后尝试找到 .
和数字。您希望它找到 .
和后面有单词边界的数字,而不是之前。