[英]Regex, exclude number starting with certain character
我想找到数字,不要继续使用£字符。 说我有一个字符串:
“2012年国内生产总值为1270亿英镑”
我想只返回2012年 。
我试过了[^$][0-9]*
但这只忽略了$
character。 试图匹配以数字开头和结尾的整个单词\\b[0-9]*\\b
但是\\b
仅适用于[0-9a-zA-Z]
还有什么建议吗?
一个可行的选项(使用http://gskinner.com/RegExr测试)是:
(?<![£0-9])[0-9]+
这使用负面的lookbehind来排除£。 除了“2012”之外,额外排除0-9是为了防止它在上面找到“27”。
您可以在字符串前加上空格并搜索正则表达式\\s[0-9]+
这意味着'数字前缀的单词,以数字开头'这将排除以$,£或除数字以外的所有其他内容的所有单词。
这是一个很好的工具,您可以尝试这些。 以下是您查询http://regex101.com/r/iH9uS8的示例方式
这对我有用:
(?:^|\\s)(\\d+)(?:\\s|$)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.