【问题标题】:regex remove white space after text [duplicate]正则表达式删除文本后的空格[重复]
【发布时间】:2013-01-29 00:25:43
【问题描述】:

从这个正则表达式,

text.replace(/^\s+|\s+$/g,"").replace(/  +/g,' ')

如何删除仅用于尾随空格的正则表达式?

我是 regex 的新手,做了一些研究,但我无法理解这种模式。

【问题讨论】:

  • 你知道^$ 在正则表达式中是什么意思吗?要弄清楚这一点,您只需要知道这些。
  • 如果您想轻松查看正则表达式在做什么,请使用 regex101.com。这是您发布的内容:regex101.com/r/xQ6vQ8
  • 阅读文档并学会钓鱼。

标签: javascript regex replace


【解决方案1】:

/^\s+|\s+$/g 表示

^    // match the beginning of the string
\s+  // match one or more whitespace characters
|    // OR if the previous expression does not match (i.e. alternation)
\s+  // match one or more whitespace characters
$    // match the end of the string

g 修饰符表示重复匹配,直到找不到匹配为止。

因此,如果您想删除字符串末尾匹配空白字符的部分,请删除 |\s+$ 部分(以及 g 标志,因为 ^\s+ 无论如何只能在一个位置匹配 - 在开头字符串)。


学习正则表达式的有用资源:

【讨论】:

  • 为懒惰的 OP 回答问题的好方法......你给他所有他需要的信息来回答他的问题,但不要逐字给他“复制/粘贴”他正在寻找的解决方案!
  • @jahroy - 不寻找复制粘贴解决方案 - 试图了解正则表达式的工作原理 - 这对我来说一直是一项最艰巨的任务,如果你不想回答,请不要打扰 - 你为什么要干涉首先在这里。我认为有些人只是想制作这样的cmets。
  • @Felix Kling - 谢谢你的帮助。现在很清楚了。
猜你喜欢
  • 2011-11-01
  • 2012-11-15
  • 1970-01-01
  • 2017-03-03
  • 2021-04-10
  • 1970-01-01
  • 2023-02-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多