gpt4 book ai didi

javascript - 正则表达式:查找字母后的单词,但不将该字母包含在结果中

转载 作者:行者123 更新时间:2023-11-30 23:44:13 25 4
gpt4 key购买 nike

这是我可能拥有的字符串:

(MyStringIsOneWholeWord *)

我使用了以下 JavaScript 正则表达式来获取括号后的文本(如果它以 My 开头)。

/(^|\s|\()+My(\w+)/g,

问题在于它在结果中包含第一个括号,因为它是找到它的字母/字符。

如何去掉结果中的括号?

<小时/>

编辑

有关更多信息,我正在编辑 SHJS 语法荧光笔的 C 语言 javascript 文件。

以下是此问题的所有相关代码:

[
/(^|\s|\()+My(\w+)/g,
'sh_keyword',
-1
]

最佳答案

如果这只是 JS,你可以使用捕获组:

/(^|\s|\()+(My\w+)/g

然后获取该组的比赛。然而,SHJS 似乎将使用整个匹配,需要使用 Lookbehind,而 Javascript 的 Regex 引擎不支持该功能。

<小时/>

为了解决这个问题,我建议您read the documentation 。这部分在这里:

Once you have defined the language, you must convert it to the JavaScript format used by SHJS. You will require the sh2js.pl script from a source distribution of SHJS. The sh2js.pl script is written in Perl and requires the Parse::RecDescent module.

告诉我生成的 JS 文件不应该被编辑。文档说 SHJS 使用与 GNU 源代码突出显示相同的格式,指定为 here 。所以你应该编辑原始的 .lang (link)文件,然后将它们转换为 .js

关于javascript - 正则表达式:查找字母后的单词,但不将该字母包含在结果中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3653224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com