问题标签 [regex-group]

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 投票
1 回答
363 浏览

regex - 用于提取有限数量文件夹的正则表达式(前 3 级)

考虑以下文件路径:

我需要使用正则表达式提取文本“\documents\department\my_project”。细节:

  • 排除“文件服务器”和“共享”
  • 之后限制为 3 个“逻辑”顶级文件夹,因此不包括“\a_sub_folder”
  • 不要包含文件名(“myfile.doc”)

使用以下正则表达式..:

..我在我的“文件夹”组中得到这个:

困扰我的部分是如何摆脱“a_sub_folder”。我尝试将重复运算符添加到文件夹组,但没有效果:

上面两个中的第一个不会改变输出,而第二个返回一个空组“文件夹”

我有一种感觉,我的正则表达式从根本上是错误的,但不明白为什么。任何人都可以对此有所了解吗?

谢谢 :)

/盖尔

0 投票
2 回答
316 浏览

regex - 如何使用 perl 评估变量中的内存组?

在 perl 脚本中,我想在字符串变量中评估内存组特殊变量:

我想打印:“第一个是 3;第二个是 4”(就像第二个打印一样)。

在我的示例中,只有 2 个特殊变量,但特殊字符的数量无法提前确定,因为$cal它们$regex存储在数据库中。

如何评估字符串$cal(如 php 中的 eval )?

0 投票
2 回答
828 浏览

javascript - RegExp:如何从 $N 中排除匹配的组?

我制作了一个有效的正则表达式,但我认为这不是最好的用例:

谷歌搜索后,我发现(?: ... )在正则表达式中 - 意味着忽略组匹配,因此:

但我需要第一个示例的预期结果。

有没有办法排除他们?只是为了写replace(/.../, '<b>$1</b>')

这只是了解如何在正则表达式中排除组的一个小例子。我知道我们不能用正则表达式解析 HTML :)

0 投票
1 回答
979 浏览

php - Codeigniter preg_replace

我不确定这个问题是我的嘘声还是关于 CI 的问题。我有一个 preg_replace 进程将已发布的 gdoc 电子表格 url 转换回原始电子表格 url。

这在本地运行的测试页面中运行良好。这个测试页面不是由 CI 构建的——它只是一个基本的 php 页面。

当我将模式和替换复制并粘贴到它打算用于的 CI 视图中时,没有任何乐趣。

这个故障是由 CI 还是我的“坏”引起的?是否有易于实施的补救措施?

下面是来自 CI 视图的更多代码:

汤姆

0 投票
3 回答
161835 浏览

python - 命名正则表达式组 "(?P正则表达式)”:“P”代表什么?

在 Python 中,(?P<group_name>…) 语法允许通过名称引用匹配的字符串:

“P”代表什么?我在官方文档中找不到任何提示。

我很想知道如何帮助我的学生记住这种语法。知道“P”代表(或可能代表)什么会很有用。

0 投票
1 回答
143 浏览

ios - ICECAST 数据的 NSRegularExpression 模式

我正在尝试使用 NSRegularExpression 从音频流中提取 ICECAST 数据,但我认为我的模式存在一般问题。

这是我的代码:

说输入是:

我希望得到这个:

但我明白了:

这与 NSRegularExpression 无关,因为如果在这里测试,正则表达式会显示相同的结果: http ://regex.larsolavtorvik.com/

有人能指出我正确的正则表达式吗?

0 投票
1 回答
166 浏览

.net - C#.NET 正则表达式:在编写带有排除项的组表达式方面需要帮助

我不是专家,但我正在尝试编写 .NET 正则表达式来排除 SQL 注释行。不幸的是,我找不到关于如何使用排除组在另一个正则表达式匹配中查找正则表达式匹配的正确描述: ('.*?') 。

此正则表达式查找引号之间的所有文本,但它还包括 SQL 注释区域(/*..*/ 和 --..):

我尝试过的所有东西都没有按我的预期工作。

我的测试样本:

正确的匹配应该只返回这个:

0 投票
1 回答
637 浏览

regex - Perl 6分别捕获重复匹配组?

我相信 Perl 6 提供了单独捕获重复组的能力,而不是早期版本,您只能捕获最后一个组或整个匹配的组字符串。有人可以举一个很好的例子如何使用 Perl 6 的这个很棒的特性吗?例如

我需要为此正则表达式捕获所有匹配组

我如何在 Perl 6 中做到这一点?

0 投票
4 回答
598 浏览

regex - 正则表达式无限循环仅在 perl 中,为什么?

我有一个正则表达式来测试 CSV 单元格是否包含正确的文件路径:

编辑CSV 列出了脚本运行时尚不存在的文件路径(我不能使用 -e),并且文件路径可以包括 * 或 %variable% 或 {$variable}。

由于 CSV 单元格有时包含双引号的包装,有时文件名本身需要用双引号括起来,我做了这个分组 (|"|""") ... \1

然后使用这个函数:

我正在尝试测试这个短语是否与我的正则表达式匹配(它不应该匹配):

但是我亲爱的 Perl 在以下情况下会进入无限循环:

编辑实际上它循环这个:

我在http://regexpal.com中确保我的正则表达式正确捕获了那些非对称的 """ ..." 包装双引号,但 Perl 有自己的想法:(

我什至尝试了 /g 和 /o 标志

但它仍然挂起。我错过了什么?

0 投票
7 回答
6754 浏览

javascript - Javascript RegExp 非捕获组

我正在编写一组正则表达式来将 CSS 选择器转换为 id 和类数组。

例如,我希望 '#foo#bar' 返回 ['foo', 'bar']。

我一直在努力实现这一目标

但是当非捕获前缀 ?: 应该忽略 # 字符时,它会返回 ['#foo', '#bar']。

有没有比对每个返回的字符串进行切片更好的解决方案?