问题标签 [xregexp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
replace - XRegExp 替换无法获得匹配字符串
为什么 strNew 是“John Smith”而不是“Smith,John”???
javascript - 对嵌套跨度使用 XRegExp.matchRecursive
我想实现一种方法来获取一个开放跨度标签和它的关闭标签之间的所有内容。问题是有时我可以嵌套跨度,我想确保我的正则表达式不会停止它看到的第一个结束跨度。
要查看我的问题,请查看:Regex101:嵌套跨度
我想确保我得到了打开和关闭标签之间的所有内容。不管</span>
我能在里面找到多少。
我找到了一个由 Steven Levithan 制作的库,可以满足我的需求。我遇到的问题是这个例子是基本的,我不确定我能否实现我想要的。
我正在使用XregExp.matchRecursive方法。在示例中,他们给出了一个开始标签和一个结束标签。我的开始标签有点复杂,看起来像 : <span style=\\?"color:([a-zA-Z\s]*?)\\?">
。问题是当我用这个分隔符执行这个方法时,我得到这个错误:字符串包含不平衡的分隔符。测试的字符串是:
我认为我的问题是因为我使用正则表达式作为起始分隔符。正如文档中解释的那样,我们应该在正则表达式中添加一个转义反斜杠级别。这就是为什么我尝试使用这个正则表达式作为开始分隔符 : <span style=\\\\?"color:([a-zA-Z\\s]*?)\\\\?">
。还是行不通。我不知道如何告诉这个方法找到具有颜色样式属性的跨度和他的关闭标签之间的所有内容。
也许有人有解决方案?
jquery - jQuery 可以与 XRegExp 集成以过滤元素/单词吗?
问题
jQuery 可以与 xRegExp 或其他支持 Unicode 的正则表达式库集成吗?
如, \b(\p{L}+)\b/g
(可能覆盖原型定义等)
- 根据正则表达式返回元素?
- jQuery.filter() 基于另一个正则表达式库?
- 根据另一个库拆分()单词?
- .each() 使用另一个正则表达式库?
语境:
Unicode 标记、属性、句子:
<div id="FragmentText1">ncididunt ut εἶπεν πρὸς<div>
<div id="πρὸς_id">ncididunt ut εἶπεν πρὸς<div>
javascript - 从 RegExp 中删除子字符串之间的字符串
我编写此代码用于将字符串从“a”删除到“c”
控制台中的结果是“bbd”
但适合我的结果是“bbabbd”
我可以使用正则表达式来解决这个问题吗?
感谢您的帮助。
regex - 需要正则表达式来完成语言解析器的基本递归功能(或帮助制作 Babel 插件)
我有以下正则表达式:
它用于获取这样的代码:
并将其替换为:
对于该用例(这是最常见的),它可以正常工作,但如果在其中使用它就不起作用this
:
结果错误地是这样的:
应该是这样的:
嗯,这是第一个问题。它实际上应该像 一样转换this.doSomething
,所以最终结果应该是:
基本上,我的正则表达式假设右括号 fromthis.baz()
是右括号,this.doSomething()
并且也不会递归操作。我在这里需要某种递归行为/控制。
我听说过xregexp,但我不确定这对我有什么帮助。似乎真正的语言解析器可能是唯一的出路。我在那里没有太多经验,但我不怕弄脏我的手。似乎像 Esprima 这样的工具可以提供帮助?
归根结底,我希望在代码的构建步骤中对语言/语法进行细微的更改,即与 Babel 完全一样。我实际上正在使用 Babel。也许某种 Babel 插件是一种选择?
无论如何,我对快速修复正则表达式技巧或更专业/强大的语言解析技术持开放态度。我也很好奇这些问题通常是如何处理的。扫描整个输入并匹配我假设的打开/关闭大括号/括号/等?
javascript - javascript正则表达式替换特殊字符,但允许白名单,使用xregexp
我想替换字符串中的大多数特殊字符(在 javascript 中),但允许一些特殊情况,如 c++、c# 等。我已经尝试过 node.js 中的 xregexp 库,我认为我能够删除所有非字母和数字。我也想允许所有外文字母。这是我到目前为止所拥有的:
这输出
我需要使用允许的单词创建某种列表,例如 c++ 和 c#。期望的输出是:
regex - How to Match only url from a tag node js
I have a tag <a href="#caveat1"><span style="color: rgb(255,255,255);">[1]</span></a>
I am using this regex <a href="(.*)">(.*)<\/a>
But its not parsing the url only. Its also parsing <span style="color: rgb(255,255,255);">[1]</span>
How can i get only the url from a tags?
typescript - 如何在 Angular2 中加载 XRegExp
我想在用 TypeScript 编写的 Angular2 应用程序中使用 XRegExp 库。
我已将 XRegExp 安装为 node.js 模块。
如何var unicodeWord = XRegExp("^\\pL+$");
在组件方法中工作?
(如何在 TypeScript 中引用 JS 库?如何以角度加载 node.js 模块?)
更新
打字.json:
<head>
我的 index.html 中的标记:
点火.ts:
amadeus.component.ts:
javascript - XRegExp 如何验证像越南名字这样的字符串
我使用 XRegExp 来验证一个字符串,如: Nguyễn , Trần .... (越南名称)
这是我的代码:
但总是返回 TRUE
有人可以帮助我吗?谢谢
php - 使用 XRegExp 进行 Yii2 验证,\p{L} 不起作用
我正在使用 Yii2 框架,并且我有一个Validator
应该进行客户端验证的框架。我有一个看起来像这样的正则表达式:/^[\\p{L}]+$/u
为简单起见,但我的实际正则表达式有点复杂,但 \p{L} 部分是导致问题的原因。
所以我在验证器类中的代码是这样的:
问题是,这对于 \p{L} 总是失败,但如果我改变类似 /^[AZ]+$/ 的模式,它可以完美地工作。
我正在使用 1.3.0 xregexp-all.js。它被添加到AssetBundle
\assets\AppAsset.php 的一个类中