【问题标题】:RegExp to get unit from matrix stringsRegExp 从矩阵字符串中获取单位
【发布时间】:2013-01-02 06:44:50
【问题描述】:

假设我们有一些这样的字符串并且需要它们的单元:

'rotate(90deg)' // 'deg'`
'rect(0 0 5px 5px)' // 'px'
'rgba(0, 0, 0, 0.5)' // ''

我怎样才能做到这一点?

【问题讨论】:

  • 例如? rotate(90deg) --> 90deg, rect(5px 0px 0px 5px) --> 5px 0px 0px 5px, rgba(0, 0, 0, 0.5) --> 0, 0, 0, 0.5?

标签: javascript css regex units-of-measurement


【解决方案1】:

这个应该可以:

/[0-9]+([^ ,\)`]*)/

例子:

/[0-9]+([^ ,\)`]*)/.exec('rect(5px 0px 0px 5px)')[1]; // 'px'

【讨论】:

  • 您能否扩展您的正则表达式以测试 分隔符rgb 中的逗号)?
  • RegExp 已经测试了逗号分隔符。问题出在哪里?
  • 对不起,我的意思是如果给出分隔符,它会提取它。
  • /[0-9]+([^ ,\)]*)/.exec('rgba(0, 0, 0, 0.5)')[1]` 返回 ''。我不明白。是否要在结果中获取逗号分隔符?
  • 是的,正确!像这样:/[0-9]+([^ ,\)]*)/.exec('rect(5px 0px 0px 5px)')[2] // ''/[0-9]+([^ ,\)]*)/.exec('rgba(0, 0, 0, 0.5)')[2] // ','
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-17
相关资源
最近更新 更多