【问题标题】:taking out html from a string with regex [closed]使用正则表达式从字符串中取出 html [关闭]
【发布时间】:2021-09-22 17:53:04
【问题描述】:

嗨,

我有一个如下所示的字符串:

<span class='$variable'>

我想去掉除了 $variable 之外的所有东西,所以我尝试了这个:

string.replace('/<span class=\'/','/\'>/');

我在 php 上使用过这个正则表达式,但它似乎不适用于 javascript。在这种情况下,正确的正则表达式是什么?

谢谢。

【问题讨论】:

  • 这是基本的正则表达式...先尝试一些相关的东西(花 10 分钟的正则表达式之旅)。
  • 是的,正如我所说,这个适用于 php,但不适用于 javascript,所以根本没有帮助......
  • 第一个 JS 正则表达式由 / 分隔,不带引号。在那里你可以开始了。
  • 这是stackoverflow.com/questions/7427731/…的骗子。另外,您需要在此处进行替换和全局标志.replace(/&lt;span class='|'&gt;/g, '')。或者,.replace(/&lt;span\s+class='([^']*)'&gt;/, '$1')
  • 优秀的解决方案,谢谢。如果您向我解释一下,我会更加感激,因为我迷失了正则表达式。 | 是你一直用来表示不应该替换的通配符的字符吗?

标签: javascript regex replace


【解决方案1】:

使用

.replace(/<span class='(.*?)'>/, '$1')

regex proof

解释

PATTERN MEANING
&lt;span class=' &lt;span class='
( group and capture to $1:
.*? any character except \n (0 or more times (matching the least amount possible))
) end of $1
'&gt; '&gt;

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2013-07-31
  • 1970-01-01
  • 1970-01-01
  • 2014-01-20
  • 1970-01-01
  • 2015-11-22
  • 2011-03-18
  • 1970-01-01
相关资源
最近更新 更多