我试图替换字符串中的所有数字,而不是使用Java包装在单引号中。
示例:22 111'333
匹配应仅返回:22和333
我尝试了几个正则表达式:
我首先选择所有出现的数字<canvas id="canvas"></canvas>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
我试图以此为基础,但无法否定单引号
以及与上述内容的组合:-?\\d+
和-?(^[^\']([0-9]*))
。
答案 0 :(得分:4)
您可以将此正则表达式与周围的断言一起使用:
(?<![\d'])\d+(?![\d'])
(?<![\d'])
:负面观察断言我们在前一个位置没有单引号或数字(?![\d'])
:否定前瞻断言我们在下一个位置没有单引号或数字