问题标签 [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.

0 投票
2 回答
2854 浏览

javascript - Javascript unicode(希腊语)正则表达式

我想在希腊文本中使用这个正则表达式new RegExp("\b"+pat+"\b")但 "\b" 元字符只支持 ASCII 字符。

我尝试了 XregExp库,但我没有设法解决这个问题。

任何建议将不胜感激。

0 投票
2 回答
5357 浏览

javascript - Chrome:未捕获的错误:无法在同一帧中加载 XRegExp 两次

以下代码将在两台不同计算机上的两个 chrome 中失败(它们都是 Windows 7,Chrome 12.0.742.100)。

我觉得我什么都试过了。谁能在 chrome 上确认这个错误,有没有人知道我如何修复它?非常感谢。

错误的 URL:http: //jalsoedesign.net/test/hashchanging/

我应该补充: 它工作正常,做它应该做的(改变页面哈希),但仍然出现错误。

0 投票
2 回答
1945 浏览

javascript - 用于在 Unicode 字符串中搜索单词边界的 Javascript 正则表达式

是否有通过 JavaScript 正则表达式(使用“xregexp”JS library cab)在日语字符串中查找单词边界的解决方案(例如:“私はマーケットに行きました。”)?

例如:

对于日语字符串,我需要相同的逻辑。

0 投票
1 回答
2691 浏览

javascript - 带有 SyntaxHighlighter 和 jQuery 的 IE 错误 - “无法获取属性 'slice' 的值:对象为空或未定义”

我真的很喜欢SyntaxHighter - 它是最漂亮的代码。不幸的是,我对 IE7 和 IE8 中一个令人震惊的 JS 错误大发雷霆,这将阻止我完全使用这个原本出色的插件。

这是一个测试用例。我包括

在我的标题中,以便 IE7 和 IE8 可以识别 HTML5 元素。

在我的测试页面的正文中,我刚刚得到了一些导航项:

除了这些包括 JQuery 和 SyntaxHighlighter 之外,没有别的东西,以及这个初始化 SyntaxHighlighter 并尝试将事件侦听器添加到导航菜单的小脚本。

当我在 IE7 和 IE8 中查看此页面时,我收到错误“SCRIPT5007:无法获取属性'slice'的值:对象为空或未定义”并且我的 jQuery 无法工作。

通过阅读,我了解到这可能与 SyntaxHighlighter 使用的 XRegExp 有关。根据this jQuery bug ticket,在XRegExp 1.5.1 中修复了XRegExp 中的一些错误。不幸的是,这个修复似乎没有找到 SyntaxHighlighter 的方法。在 SyntaxHighlighter 的Bitbucket 页面上讨论了类似的错误。我尝试了一个人制作的修改后的 XregExp.js 和 shCore.js 文件,但它并没有解决我的问题。

有没有其他人遇到过这种事情?否则我将不得不使用其他一些糟糕的语法荧光笔!

0 投票
2 回答
391 浏览

javascript - 正则表达式不会按预期匹配单词

我正在尝试根据这些标准使用XRegExp来测试字符串是否是有效单词:

  • 字符串以一个或多个 Unicode 字母开头,后跟
  • 撇号 ( ') 后跟一个或多个 Unicode 字母,重复 0 次或多次。
  • 字符串在匹配的模式之后立即结束。

也就是说,它将匹配这些术语

你好不能 Alah'u'u'v'oo O'reilly

但不是这些

吃完为止

我正在尝试这种模式,

但它不会匹配任何包含撇号的单词。我究竟做错了什么?

编辑:使用正则表达式的代码

0 投票
1 回答
2815 浏览

javascript - XRegExp 替换 IE 中的 Unicode 字符

我开发了一个 javascript 函数来清理一系列 Unicode 字符。例如,“ñeóñú a1.txt”=>“neonu a1.txt”。为此,我使用了一个正则表达式:

但它在 IE 中无法正常工作。如果我的研究是正确的,IE 不会以同样的方式检测 Unicode。我正在尝试使用与所有浏览器兼容的库 XRegExp ( http://xregexp.com/ )制作等效函数,但我不知道如何编写 Unicode 模式,因此 XRegExp 在 IE 中工作。

失败的尝试之一:

我怎样才能建立这种模式?

0 投票
1 回答
1615 浏览

javascript - Javascript Node.js Unicode 正则表达式

我需要输入验证,良好的输入验证以保持一切清洁。所以我想要一个严格的“全名”正则表达式,国际所以我需要Unicode支持。我下载了 XRegExp,它将“它们的格式”编译为正则表达式并支持 Unicode:

正确名称:

  • 约翰·埃尔克杰德
  • 安德烈·斯文森
  • 马尔科·达尔梅达
  • 克里斯托弗拉库尔

不正确的名字:

  • 汉斯
  • H4nn3 安徒生
  • 马丁亨里克森!

所以我需要:

  1. 匹配 unicode 字母 (a, æ)
  2. 匹配 unicode 重音符号(á、Ë 等)
  3. 匹配 unicode 连字符(- _ 等)

在 PHP 中,我可以执行以下操作来匹配:

我发现,我可以用 XRegExp 做:

^\p{L}+$ 将匹配“日本”,因此只有第一个字母有效,但我怎样才能弄清楚如何处理这些 un​​icode 重音符号,连字符?

感谢帮助。

0 投票
2 回答
84 浏览

javascript - 在带有注释的 XRegExp 中查找哈希 ("#")

如果您使用 XRegExp 的“x”标志,则不清楚如何将文字“#”添加到搜索中。

该文件似乎没有产生任何照明。

例如:

正如预期的那样 - '#' 之后的所有内容都是注释并被忽略。

明显的解决方案,不忽略该#行的后续内容,通常(根据我的有限经验)以转义修饰符开头,例如\\

或者

不幸的是,两者都没有按预期工作,前者出于明显的原因,后者产生:

甚至在更有害的情况下,我们必须修改输入数据:

另一种规范转义是使用双哈希 ( ##),但这也不起作用:

那么问题就变成了,如何将#文字添加到使用 'x' 标志的 XRegExp 表达式中?我难住了。

0 投票
2 回答
1440 浏览

javascript - 使用 XRegExp 在 JavaScript (Node.js) 中验证 UTF-8 名称

我正在尝试检查给定的 UTF-8 字符串是否仅包含字母。
我尝试了在这里找到的解决方案:Validating user's UTF-8 name in Javascript

给定字符串:Ciesiołkiewicz
var XRegExp = require('xregexp').XRegExp('^\\p{L}+$');

它不起作用,因为
我尝试了“ł”字母,XRegExp('^[\\p{Latin}\\p{Common}]+$');
但它太多了,它接受波兰字母但也接受像“$”等字符

如何仅针对字母进行验证?我不想手动将它们输入正则表达式。

0 投票
2 回答
1077 浏览

javascript - javascript中递归语法的正则表达式

假设我有以下虚构的语法,并带有一个递归定义的子句。

假设其他所有内容都具有非递归定义,那么应该如何为“子句”编写 JavaScript 语法?如果有人熟悉 XRegExp 库来执行此操作,那将是一个加分项。