首页 > 解决方案 > 使用 javascript/jquery 删除字符串的开头

问题描述

我正在从一种方法中获得不断变化的结果。每次都是一个字符串,但在每个字符串的开头都写着“String(xxx)”字符串的文本...... “。xxx取决于字符串中的字符数。我尝试使用正则表达式来删除所有内容在 " 首次出现之前:

(result.replace(/^.+?(\") /, ''))

但我不确定我是否正确使用它。我也会接受其他方法,在每种情况下都删除字符串的开头(与字符串的长度无关)。

例子:

返回字符串:'string(18) "This is an example"'

我只想在开头没有这些东西的情况下得到字符串,所以:

'This is an example'

但是回报(以及括号中的数字)可能会有所不同。我想在每种情况下都删掉它。

标签: javascriptjqueryregexstring

解决方案


您可以使用以下正则表达式实现此目的:

/.+\)\s\"(.*)\"/

如下:

  • .+- 一个或任意数量的字符
  • \)\s\"- 直到你到达) "
  • (.*)- 然后捕捉一切
  • \"- 直到你进入决赛"

工作示例:

const processString = (string) => {

  let processedString = string.replace(/.+\)\s\"(.*)\"/, '$1');

  console.log(processedString);
}


processString('string(18) "This is an example"');
processString('string(23) "This is another example"');
processString('string(25) "This is a "third" example"');


推荐阅读