问题标签 [backreference]
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.
.htaccess - RewriteCond - 没有价值的反向引用
遇到了这个奇怪的问题:我正在尝试将这个地址 www.mydomain.com/index.asp?pag=XXX&id=YYY 翻译成 www.mydomain.com/XXX-YYY
我正在尝试
但我得到“%1-%2”,因为结果似乎我无法正确显示它们,我错在哪里?
java - Matcher.replaceAll() 中的多个反向引用
Matcher.replaceAll()
使用单个 反向引用效果很好(即Matcher.replaceAll("$2")
)。
但我无法使其与两个或多个反向引用一起工作,例如Matcher.replaceAll("$1$2")
.
是否Matcher.replaceAll()
支持多个反向引用?如果是这样,使用它的正确语法是什么?
regex - 在正则表达式中否定反向引用
如果字符串具有这种预测格式:
其中 " (引号)也可能是 ' (单引号),并且结束字符(' 或 ")将与开始字符相同。我想匹配引号之间的字符串。
(两个 \s 允许 = 符号附近的任何空格)
第一个“捕获的组”(在第一对括号内) - 应该与应该是 ' 或 " 的开头引号匹配然后 - 我应该允许任何数量的字符不是第一组中捕获的字符,然后我期望在组中捕获的字符(括起来的引号)。
(所需的字符串应在第二个捕获组中捕获)。
但这不起作用。
这样做:
但我想确保左引号和右引号(双引号或单引号)相同。
编辑
目标基本上是获取一个锚的开始标签,该锚的类属性中包含某个类名,我想涵盖类属性的罕见情况,包括 (') 或 (")。
遵循此处的所有建议,我使用了以下模式:
含义:
找到一个标签打开的标志。
允许任何空格。
找到单词a。
允许任何非结束标签。
Find "class (any spaces) = (any spaces)"
获取开引号,以下之一:(" or ' or \" or \')。
来自 Alan Moore 的回答:允许任何不是开头引号的字符。
find classname
允许任何不是开头引号的字符。
找到与开头相同的结尾引号。
允许任何未关闭标签字符。
找到结束标记 char。
asp.net - c#中的ASPX属性正则表达式解析
我需要使用正则表达式在 ASPX 文件中查找属性值。
这意味着您无需担心 HTML 格式错误或任何与 HTML 相关的问题。
我需要找到特定属性(LocText)的值。我想得到引号内的内容。值内的任何 ASPX 标记(例如 <%=、<%#、<%$ 等)对于此属性没有意义,因此被视为其一部分。
我开始使用的正则表达式如下所示:
这很好用,第一组,即结果文本,获取除双引号之外的所有内容,双引号是不允许的(必须使用 " 代替)
但是 ASPX 文件允许使用单引号 - 然后必须应用第二个正则表达式。
我可以使用这两个正则表达式,但我正在寻找一种连接它们的方法。
这也有效,但似乎效率不高,因为它创建了不必要的组数。我认为这可以通过使用反向引用以某种方式完成,但我无法让它工作。
我认为通过这个,我将单引号/双引号保存到第一组,然后我告诉它读取不是第一组中找到的字符的任何内容。这再次被第一组的引用所包围。显然,我错了,它不是那样工作的。
有什么办法,如何将前两个表达式连接在一起,创建最少数量的组,其中一个组是我想要获得的属性的值?是否可以对单/双引号值使用反向引用,还是我完全误解了它们的含义?
xml - Notepad++ 正则表达式反向引用丢失
我有这个 HTML 部分:
这一行存在于很多文件中。
我需要将其替换为:
通常的正则表达式(Ctrl + F)效果很好。不幸的是,替换文本太长了,不能在通常的正则表达式中使用,所以我使用了 TextFX 的高级搜索和替换插件。
这是我的发现:
这是我的替换:
寻找作品(即该行被突出显示) 然而,替换没有。我得到了这个:
在“查找/替换”窗口中检查了这些选项:
- 正则表达式
- 自动抓取查找文本
- 裹
提前致谢
regex - 在 R 正则表达式中使用超过九个反向引用
下面的代码不起作用,因为无法正确读取 \10、\11 等的替换字符串。它将 \10 读取为 \1 并打印 0,你能帮我解决它吗?其中一个线程中有一个答案,说我应该使用捕获或命名组,但我并不真正了解如何使用它们。
php - PHP preg_replace_callback 正确转义以处理哈希符号('#')
我正在使用 Twitter 提要进行一些工作,并希望将任何主题标签转换为 clicable URL。
井号标签是一个井号 ('#'),后面紧跟一个充当搜索标签的词 - 并且不包含空格。
一个例子是......
这里有两个标签,#Shoreditch 和#AutoClubRev。
这些应分别成为以下链接...
https://twitter.com/#!/search?q=%23Shoreditch 和 https://twitter.com/#!/search?q=%23AutoClubRev
我假设我应该在这里使用 preg_replace_callback 而不仅仅是 vanilla preg_replace,因为我正在尝试获取反向引用 ($1) 并更改它而不仅仅是显示它。但我当然可能是错的。我不关心使用哪个功能——只要它能完成工作并且相对有效。
谢谢,皮特
php - 在 modrewrite 反向引用中找不到错误
我想将内容显示为(不存在的)子文件夹。所有这些子文件夹字符串都应发送到 file.php 并作为变量附加:“n”。
我的 PHP 脚本已经可以正常工作了。(如果我在地址栏 file.php 中附加变量会显示它应该显示的所有内容。)但是我的 .htaccess 定义中似乎至少有一个错误,我已经好几天都找不到了。(仍然可以访问所有页面,但由于某种原因,如果我键入任何字符串(仅限允许的字符)作为子文件夹,我将无法访问 file.php。(所有真实文件都应保持可访问性,因为它们是真实文件或子文件夹,应通过我的 .htaccess 文件中的条件将其排除在重写规则之外。)
谁能给我一个提示,为什么我的定义不符合我的要求?
php - PHP 反向引用后跟以数字开头的变量
我正在研究一种更新 config.php 文件的动态方法,但遇到了一个我无法完全解决的有趣故障。下面是我更新 config.php 文件的代码:
逻辑相当合理。它搜索以“config-”为前缀的任何 POST 变量,然后使用“config-”之后的所有内容作为我们配置文件中要更新的键的名称。配置文件采用以下形式:
在 90% 的情况下,这可以完美运行,但是如果$value
以数字开头,则替换过程中将完全忽略$3
第一个数字。$value
例如,我的配置文件中有以下值:
如果我不更改此值并保持键不变但提交我的表单,那么这一行突然看起来像这样:
缺少单引号会阻止配置文件解析(破坏整个站点),并且我们丢失了引导数据!阅读PHP preg_replace 手册后,我尝试在多个位置使用大括号(修改“示例 #1 使用反向引用后跟数字文字”)。以下方法均无效:
前 3 个导致完全相同的问题,对替换没有影响。第四个根本不起作用(语法错误),第五个实际上导致每个反向引用都被忽略。我也尝试过像这样使用单引号和连接:
同样,我遇到了与之前的 3 个示例和我的原始脚本相同的问题。
希望有人以前解决过这个问题,或者至少有一个新的想法。
php - preg_replace 反向引用日期函数
PHP 5.2.15
我正在尝试用日期函数替换 {date[F]}。
我有很好用的模式。
我已经尝试过 preg_replace_callback 但即使我使用 create_function() 它似乎也不起作用
我尝试的方法大多是未定义的错误。