我想匹配字符串正则表达式后的点?

时间:2016-06-14 00:57:02

标签: regex notepad++

我希望在字符串后面逐个字符匹配:word

  

wordtsssrrggmnvk

匹配t,匹配s,匹配s,......

我正在尝试使用(?<=word).,但它不起作用。

2 个答案:

答案 0 :(得分:1)

^word(.*)将捕获单词

之后的所有内容

http://rubular.com/r/9tG61DCsry

正如@ 4castle所提到的那样,得到子串并拆分:

var word = "wordtsssrrggmnvk";

wordMatch = word.match(/^word(.*)/);
charArray = wordMatch[1].split("")

console.log(charArray)
// ["t", "s", "s", "s", "r", "r", "g", "g", "m", "n", "v", "k"]

答案 1 :(得分:0)

在Notepad ++中,您拥有强大的Boost正则表达式引擎。它的一个功能是RemoteApiOptions options = new RemoteApiOptions() .server("your_app_id.appspot.com", 443) .useServiceAccountCredential("service@gserviceaccount.com", "258a5.p12"); RemoteApiInstaller installer = new RemoteApiInstaller(); installer.install(options); // ... all API calls executed remotely installer.uninstall(); 运算符支持,它允许您在成功匹配时执行连续模式的全局搜索(=匹配多次出现)。此外,来自Perl的一个非常好的运算符是\G,它忽略了当前正则表达式迭代中匹配的所有文本。

所以,你需要

\K

要启用(?:\G(?!^)|word)\K. 以匹配换行符,请选中 .匹配换行符复选框。

<强>解释

  • . - 匹配上一次成功匹配((?:\G(?!^)|word))或字符串\G(?!^)
  • 的结束
  • word - 省略匹配的文字(即\K
  • word - 匹配换行符(LF)以外的任何字符。

这是一个测试,其中每个找到的字符前面都有一个连字符(替换模式为.):

enter image description here