我现在不是很喜欢编码。我在 Word Regex 搜索功能中解决了一个 Regex 任务。
要解决的问题:查找 1,000 到 9,999 之间所有数字的正则表达式是什么。
这是我目前得到的:“[1-9]{1}\,[0-9]{3}”。表达式 \b 在 Word 中不起作用,所以我只在表达式前面使用了一个空格。
有没有办法让它在 Word 中工作?在 Notepad++ 中的表达式。 \b 真的有效吗?
问候约翰内斯
最佳答案
在 MS Word 中,\b
正则表达式单词边界不起作用,您需要的构造是 <
和 >
:
<[1-9],[0-9]{3}>
<
是前导词边界并且>
是尾随单词边界。
为避免匹配另一个逗号前的值(以免匹配 1,000
内部的 1,000,000
),您可以使用
<[1-9],[0-9]{3}>[!,]
哪里[!,]
匹配除逗号以外的任何字符。注意 <[1-9],[0-9]{3}>[!,]
不会匹配文档末尾的 1-9,999 数字(如果数字后面有任何其他字符,它会匹配)。
关于Word 2016 中的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46951924/