【问题标题】:Regular expression(javascript) to extract a string preceded by some constant string正则表达式(javascript)提取前面有一些常量字符串的字符串
【发布时间】:2012-04-25 16:01:17
【问题描述】:

我正在尝试提取一个前面有一些常量字符串的字符串,示例如下。

string ="deleteabc@bcd" 
match should be "abc@bcd"
or
string = "deletebcd@def"
match should be "bcd@def"

如您所见,我想在常量字符串“delete”之后提取任何内容, 请帮忙,提前谢谢

【问题讨论】:

  • 你可以使用 string.substring(string.indexOf('delete') + 'delete'.length)
  • 在大多数其他正则表达式风格中,您可以使用lookbehinds: (?
  • 为什么需要往后看?一般来说,如果你认为你需要它,请三思而后行,如果没有它的模式也能正常工作。

标签: javascript regex extract


【解决方案1】:
string = "deleteabc@bcd"
result = string.match(/^delete(.+)/)
console.log(result[1])

abc@bcd

【讨论】:

  • 这个最接近我想要的,虽然我必须说Matt的回答也不错,谢谢大家。
【解决方案2】:

如果你只是想去掉前缀

function removePrefix(str, prefix) {
    if (str.search(prefix) === 0) {
        return str.substr(prefix.length);
    } else {
        return str;
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-16
    • 2014-08-25
    • 1970-01-01
    • 2021-10-22
    • 1970-01-01
    相关资源
    最近更新 更多