小编Iry*_*ryn的帖子

jQuery.parseHTML的反向

  1. jQuery.parseHTML()产生一个数组.我正在寻找一种方法将其转换回字符串.这是我的首要问题.

  2. parseHTML()将字符串视为html的唯一方法吗?

  3. 从根本上说,我将我的字符串解析为html,这样我就可以使用find()jQuery的函数来匹配某个元素,然后只对该部分代码执行替换(有关更多详细信息,请参阅我之前的问题).那么,解析为必要的HTML吗?

javascript jquery

6
推荐指数
1
解决办法
7624
查看次数

为什么这个正则表达式不适用于东方阿拉伯数字?

@ thg435将这个答案写成了一个javascript 问题:

> a = "foo 1234567890 bbb 123456"
"foo 1234567890 bbb 123456"
> a.replace(/\d(?=\d\d(\d{3})*\b)/g, "[$&]")
"foo 1[2]34[5]67[8]90 bbb [1]23[4]56"
Run Code Online (Sandbox Code Playgroud)

它适用于印度 - 阿拉伯数字; 即1,2,3,4,.... 但是当我尝试将正则表达式应用于东方阿拉伯数字时,它失败了.下面是我用正则表达式(我刚刚替换\d[\u0660-\u0669]):

/[\u0660-\u0669](?=[\u0660-\u0669][\u0660-\u0669]([\u0660-\u0669]{3})*\b)/g
Run Code Online (Sandbox Code Playgroud)

如果我的字符串是????foo,它实际上有效,但是当它是???? foo甚至是失败时foo????:

> a = "????foo  ???? foo  foo????"
"????foo  ???? foo  foo????"
> a.replace(/[\u0660-\u0669](?=[\u0660-\u0669][\u0660-\u0669]([\u0660-\u0669]{3})*\b)/g, "[$&]")
"?[?]??foo  ???? foo  foo????"
Run Code Online (Sandbox Code Playgroud)

对我来说真正重要的是分开的数字(例如????).为什么它不能匹配分隔的数字?

更新:

另一个要求是正则表达式只应匹配5位或更多位数(例如12345而不是1234).我最初认为这就像{5,}在表达式的末尾添加一样简单,但这不起作用.

javascript regex

5
推荐指数
1
解决办法
497
查看次数

仅当包含的字符串长度大于 X 时才替换

我有一个只匹配字符串中的一个字符的正则表达式。我想测试其包含字符串的长度,如果它大于 4,则进行替换。例如,正则表达式是/\d/. 我想使用 replace 的功能形式来匹配12345而不是1234.

就像是:

text.replace(regex, function(match) {
       if (STRING.length > 4)
            return replacement
       else
            return match;
  });
Run Code Online (Sandbox Code Playgroud)

注意: /\d/只是一个例子。我没有提到真正的正则表达式来关注我真正的问题,如上所示。

javascript regex

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

javascript ×3

regex ×2

jquery ×1