当前位置: 首页 > 知识库问答 >
问题:

regex:在字符串的开头/结尾匹配所需的字符

夹谷星河
2023-03-14

我需要一个正则表达式来精确匹配在字符串开头或结尾设置的'ab'字符,并将它们替换为''。注意:它不应该与该字符集的部分匹配,只有当它完整地出现时。

  1. 因此,如果我有“AB Some AB company name AB”,它应该返回“Some AB company name”
  2. 如果我有“Balder Storstad AB”,它应该只删除“AB”,而不是开头的“B',因为它不是整个”AB“,而是它的一部分。

我尝试的是:

name.replace(/^[\\AB]+|[\\AB]+$/g, "");

“AB”不应匹配,因为它们不是单独“AB”组,而是其他单词的一部分。

共有1个答案

杨景山
2023-03-14
var rgx = /(^AB\s+)|(\s+AB$)/g;
console.log(
    "AB Some AB company name AB".replace(rgx, "")
);
console.log(
    "Balder Storstad AB".replace(rgx, "")
);
console.log(
    "ABrakadabra AB".replace(rgx, "")
);
console.log(
    "Some text hahahAB".replace(rgx, "")
);
console.log(
    "ABAB text text textABAB".replace(rgx, "")
);
 类似资料:
  • 问题 你需要通过指定的文本模式去检查字符串的开头或者结尾,比如文件名后缀,URL Scheme等等。 解决方案 检查字符串开头或结尾的一个简单方法是使用 str.startswith() 或者是 str.endswith() 方法。比如: >>> filename = 'spam.txt' >>> filename.endswith('.txt') True >>> filename.starts

  • 如何编写由字符组成但必须以相同字母开头和结尾的正则表达式?例如:

  • 我想在Java中使用Regex提取某种字符串。我目前有这样的模式: 应该匹配以“a”开头、以“se”结尾的字符串。这不起作用。我错过了什么吗? 删除了模式末尾的 \n 行并将其替换为“$”:仍然没有匹配项。正则表达式从我这边看起来是合法的。 我想提取的是从临时字符串中提取的“a se”。

  • 嗨,我有这个同时循环。此输出变量是一个 String 变量,它保留 的输出。 假设< code>br.readLine())给出了2行。 所以将这些行打印为: 有人能告诉我如何在第一行的开头和最后一行的结尾添加吗?像这样: 我通过做这样的事情来尝试这个: 这在每行后面添加了一个括号。 请帮帮我。

  • 我想从输入(proto文件)中获取所有消息块。我在下面写了regex方法,但regex模式不匹配。专家们有什么建议吗?提前谢谢。 我的原始文件,我作为字符串发送到上面的方法

  • 我尝试了这种模式,但发现第一个匹配的句子带有符号