问题标签 [metacharacters]

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 回答
1926 浏览

jquery - 带有元字符的 jQuery 选择器

我在选择具有这样 id 的元素时遇到问题<li ="0f:Bactidol_Recorder.mp4">.

我尝试使用从这个jquery链接中使用下面两个反斜杠转义元字符的函数,但仍然无法选择元素

功能:

例子:

输出:

0 投票
2 回答
231 浏览

perl - Perl、模式匹配和元字符

我正在尝试匹配两个都充满元字符的东西,这些元字符需要在我的匹配模式中用作“文字”。 \Q假设引用字符串中的所有元字符,直到\E......但它不起作用。

那是怎么回事?

这是给我带来麻烦的行: if (/\Q$prev\E/ !~ /\Q$ww[0]\E/) {

0 投票
1 回答
84 浏览

regex - 变量列表中的元引用模式

我有一个要在字符串中查找的模式列表。这些模式很多,并且包含许多我只想按字面匹配的元字符。所以这是元引用的完美应用\Q..\E。复杂之处在于我需要将模式的变量列表加入到正则表达式中。

当我尝试将元引用引入连接操作时,它们似乎没有效果。

由于某种原因,当元引用包含在我用作正则表达式的字符串中时,它不起作用。对我来说,它们只有在直接添加到正则表达式时才起作用,/\Q$anexpression\E/但据我所知,这对我来说不是一个选择。我该如何解决这个问题?

0 投票
4 回答
736 浏览

python - 如何使用 * 或 捕获字符串?在 python 正则表达式中使用组

我在下面有 str1 和 str2,我只想使用一个匹配两者的正则表达式。在 str1 的情况下,我还希望能够捕获 QSFP 端口的数量

我希望能够捕获数字“4”、“48”、“6”(如果存在)和“7548”。但我无法使用“?”捕获“6” 元字符。

当我不使用元字符时,捕获适用于 str1,但我可以使用这个正则表达式,因为它不适用于 str2:

即使我使用“+”表示一次出现,它也可以工作,但同样,这对 str2 不起作用:

当我使用“?” 为了匹配 0 或 1 次出现,即使 str1 也捕获失败:

0 投票
3 回答
6506 浏览

string - 在 R 中使用元字符进行 strsplit

我有大量数据,其中分隔符是反斜杠。我在 R 中处理它,我很难找到如何拆分字符串,因为反斜杠是元字符。例如,一个字符串看起来像这样:

我想沿着\字符分割它,但是当我运行 strsplit 命令时:

当我尝试使用“固定”选项时,它不会运行,因为它在反斜杠之后期待一些东西:

不幸的是,我不能用另一个程序预处理数据,因为数据是每天生成的。

0 投票
1 回答
815 浏览

bash - 为什么在 sed 中使用双反斜杠来运行 ssh?

我在 Gentoo Linux 的 wiki 中遇到了以下关于动态 jumphost 列表的内容

它有效,但我想sed完全理解这个表达。

阅读其原始参考资料,我能够很好地理解使用该Host *+*模式的命令的递归调用。但我有两个问题:

  1. 表达式使用%%. 为了了解原因,我使用ssh -v了 ,并观察到当ssh客户端解析时$HOME/.ssh/config,似乎第一个%被剥离了。试图确认上述内容,我下载了openssh 源代码,但readconf.c没有给我任何线索。我是 OpenSSH 源代码的新手,但不怕用调试信息和它来编译gdb它。不过,如果有更快的方法来证实我的猜想,我将不胜感激。
  2. ssh -v还透露:

    \(现在\在子shell 中用a 转义。为什么这是必要的?

谢谢,

——扎克

0 投票
3 回答
2407 浏览

unix - grep ^- 在 UNIX 中是什么意思?

正如标题所说, grep ^- 在 UNIX 中是什么意思?我知道 grep 是什么,但不知道元字符 ^- 部分。

0 投票
1 回答
1617 浏览

mysql - 具有不同字段终止符的命令行 MySQL 选择

我有一个bash运行 MySQL 语句的脚本:

这工作正常。但是,我希望得到一个制表符分隔的结果,而不是返回的表格格式。

我尝试了以下方法,但它给出了语法错误:

错误是:

ERROR 1064 (42000) at line 3: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FIELDS TERMINATED BY "\t"' at line 10

我也试过

但我得到同样的错误。

有没有一种正确的方法可以从这种 MySQL 运行中更改字段终止符?谢谢你的建议。

0 投票
1 回答
3023 浏览

python - pexpect 和 shell 元字符(>、| 或 *)

我现在很困惑。

pexpect 文档说明如下:

但是,我正在查看一些使用|*in 的旧代码pexpect.sendline(some command | grep 'something')。所以我开始测试这些命令,它们似乎都可以工作。还值得一提的是,我没有使用修改过的 pexpect 模块,它是 python 的普通旧 pexpect。

怎么来的?为什么pexpect提到元字符不起作用,而它显然这样做?

0 投票
2 回答
74 浏览

java - Java 中的正则表达式:a*

你知道为什么在一个简单的正则表达式模式中 if put a*( quantifier) 它不匹配匹配器中的任何结果,即使它实际上包含字符 a; (在任何情况下,它都应该返回一个发现空字符串的结果,因为我正在使用“ ”)。它适用于其他字符,例如 r* 和 b* 没有问题。我知道如果内容放在引号或括号之间,它会起作用。(“a *”)。虽然只是想知道为什么它可以使用不带引号的 b* 而不是不带引号的 a* 。

代码:

我知道 'a' 是一个元字符,但 'e' 和 'f' 也是,并且与它们一起正常工作。

我在命令行中插入:args[0] = a* args[1] = abba 作为输入。

任何的想法?提前致谢。