javascript:匹配字符串与占位符

fae*_*bzz 0 javascript regex placeholder

我想检查我的字符串"Hello my name is Thomas"是否与字符串"Hello my name is $"匹配.所以对我来说,以下陈述应该是真的:

"Hello my name is Thomas" == "Hello my name is $"
Run Code Online (Sandbox Code Playgroud)

之后我想提取$ string之类的东西

function getParam(text, template) {
  returns "Thomas"
}
Run Code Online (Sandbox Code Playgroud)

你有什么建议吗?

Gré*_*EUT 5

您可以创建一个正则表达式,然后使用 Regex.exec

const regex = /Hello my name is (.*)/;

const ret = regex.exec('Hello my name is thomas');

console.log(ret[1]);
Run Code Online (Sandbox Code Playgroud)


使用正则表达式时,您可以使用https://regex101.com/.它可以帮助您了解自己在做什么.

你案例中的例子:

在此输入图像描述



function extractName(str) {
  const ret = /Hello my name is (.*)/.exec(str);

  return (ret && ret[1].trim()) || null;
}

const name = extractName('Hello my name is thomas');

const nameWithSpace = extractName('Hello my name is    thomas    ');

const fail = extractName('failure');

console.log(name);
console.log(nameWithSpace);
console.log(fail);
Run Code Online (Sandbox Code Playgroud)