我正在尝试创建一个匹配以下日语字符串中的数字的正则表达式
4日
12日
完全忽略以下字符串。
3月01日
3月1日
3月31日
到目前为止,我能够得到的最接近的是:
(?<!月)([0-9]{1,2})(?=日)
但这最终与3月01日和3月31日所包含的“1”相匹配。 有什么建议吗?
答案 0 :(得分:1)
向lookbehind添加数字图案:
(?<![0-9月])([0-9]{1,2})(?=日)
^^^
请参阅regex demo
如果当前位置前面有数字或(?<![0-9月])
,则月
lookbehind将失败所有匹配,并且回溯不会返回不需要的上下文中的部分数字。