如何重写我的锚点,使其在所有情况下都更加通用和正确?我知道使用
\b
作为锚点并不是最佳选择,因为它依赖于实现。
我的目标是匹配文本文件中的某种类型的单词。对于我的问题,匹配的单词并不重要。
假设
\b
是单词边界锚点,单词字符是[a-zA-Z0-9_]
我构建了两个锚点,一个用于正则表达式的左侧,一个用于右侧。请注意我如何处理下划线,因为当我读取文本文件时,我不希望它成为单词字符。
(?<=\b|_)
积极的后瞻(?=\b|_)
积极前瞻使用更通用的插入符
^
和 $
美元符号来获得相同的效果,等效的锚结构是什么?
您可以匹配非单词字符或开始/结束锚点:
(^|\W)(\w+)(\W|$)