Javascript正则表达式从单词的开头删除数字。

时间:2014-03-27 00:55:47

标签: javascript regex

我正在尝试清理文本,其格式如下:

1在

12答案

6अनाथ

标题

5-16这些是

我想删除任何数字和破折号,只要它们在一个单词的前面,但我失败了。 这很接近并适用于前两种情况:

str.replace(/^[^A-Z]*/,"")

但是当语言像第三种情况一样改变时,它会删除所有内容。

最后一个案例有换行符,但这不起作用:

.replace(/^[^\r\n|\r|\n^A-Z]*/,"")

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

如果您只想要替换十进制数字和连字符,那么只需在字符类中包含这些数字:

str.replace(/^[\d-]*/,"")

如果您还要删除所有空格(包括换行符),请尝试以下操作:

str.replace(/^[\d\s-]*/,"")

答案 1 :(得分:1)

我认为这样做:

str.replace(/^[-\d\s]*/,"")

直播代码:http://regexr.com/38kkk

说明:

  • -是文字破折号。请注意,如果要将其作为文字字符放在[]中,则应将其放在[之后。
  • \d代表数字
  • \s代表空白字符(空格,制表符,新行)