我正在使用Notepad++并学习正则表达式,但我想知道为什么某些元字符在编辑器中不起作用,即星号 (*) 和加号 (+)。
例如:
这棵树长着叶子和花,看起来棒极了。
正则表达式:[tre*]
上面的正则表达式在 Notepad++ 中没有按预期工作。
Red*_*ick 11
我的目的是匹配
tre及其前面的字符。
那么在你的榜样The tree is looking awesome with leaves and flowers.字片段tre不preceeded由同一个词的任何字符,它是由它们是早期的话一部分字符preceeded。这使您的问题看起来有点模棱两可。
要匹配后跟“t”然后是“r”然后是“e”的任何字符,我会使用.*tre.
要匹配“t”然后“r”然后“e”后跟任何字符,我会使用tre.*.
要匹配以“t”然后“r”然后“e”开头的单词,我会使用tre\w*
我的正则表达式是 [tre*]
即匹配单个字符,匹配的字符可以是指定的四个字符中的任意一个。在[]元字符内部*被当作普通字符处理(因为这是在该上下文中处理它的最有用的方式)。
括号[]用于指定在文本中可以找到的一个字符,该字符可以有多种可能性。例如,如果您想匹配任何一个单词,Tree或者tree您可以使用[Tt]reewhich 表示匹配一个字符,该字符是T或t后跟第二个字符,r后跟第三个字符,e后跟第四个字符e.
您可以匹配Tree和tree使用.ree但.匹配任何单个字符,因此 RE 也会匹配free您可能不想要的其他单词。[]为您提供一种比.指定文本中要匹配的单个字符的值更具体的方法
| 归档时间: |
|
| 查看次数: |
5165 次 |
| 最近记录: |