javascript - 正则表达式:从 JavaScript 中的字符串获取高度值

标签 javascript regex

我有一个像 .hello-world-chat-size {height: 350px !important;} 这样的字符串,我想提取 height 属性的值,即 350。我尝试了这个正则表达式 /^height\:(.*)$/gm 但无法得到任何结果。

最佳答案

出现此问题的原因是 ^ 匹配字符串的开头,而 $ 匹配字符串的结尾。实际上,(.*)$ 匹配该行的整个其余部分,但由于模式的开头不匹配,所以根本不匹配。您只需使用

/height:\s*(\d+)px/

/height:\s*(\d+)/

请参阅regex demo

详细信息:

  • height: - 文字子字符串 height:
  • \s* - 零个或多个空白符号
  • (\d+) - 1 位或更多数字
  • px - 一个文字字符串 px (实际上,它是多余的,但以防万一您可能有其他没有 px 的值,您可能会尽可能保持明确)

JS 演示:

var re = /height:\s*(\d+)px/; 
var str = '.hello-world-chat-size {height: 350px !important;}';
var m = str.match(re);
if (m) {
  console.log(m[1]);
}

关于javascript - 正则表达式:从 JavaScript 中的字符串获取高度值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38398042/

相关文章:

javascript - 如何知道 url 是否已添加书签

Javascript、Tesseract、AWS IoT、Dynamodb 和缓冲区

javascript - AngularJS 常规查找

jquery - 文本区域最大长度检查

javascript - Gremlin 暂停响应写入,因为 RequestMessage 超出了 writeBufferHighWaterMark

Java正则表达式算术运算符的出现

javascript - JS 和 Regex - 删除括号前的逗号

regex - 如何在变量中保存替换正则表达式(搜索/替换),类似于 qr//

regex - .htaccess RewriteRule 正则表达式匹配特定单词

ruby-on-rails - 什么是类似 Twitter 名称的正则表达式?