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

javascript正则表达式来检查第一个和最后一个字符是否相似?

呼延源
2023-03-14

有没有简单的方法来检查字符串的第一个和最后一个字符是否相同,只使用正则表达式?

我知道你可以和查拉特核实一下

var firstChar = str.charAt(0);
var lastChar = str.charAt(length-1);
console.log(firstChar===lastChar):

我不是要求正则表达式匹配第一个字符和最后一个字符

共有2个答案

麻书
2023-03-14

你可以试试

js prettyprint-override">const rg = /^([\w\W]+)[\w\W]*\1$/;
console.log(
  rg.test(`abcda`)
)
console.log(
  rg.test(`aebcdae`)
)
console.log(
  rg.test(`aebcdac`)
)
商运锋
2023-03-14

您可以将正则表达式与捕获组及其反向引用一起使用,通过捕获第一个字符来断言起始字符和结束字符是相同的。要测试正则表达式匹配,请使用RegExp#test方法

var regex = /^(.).*\1$/;

console.log(
  regex.test('abcdsa')
)
console.log(
  regex.test('abcdsaasaw')
)
 类似资料:
  • 我试图检查字符串的第一个和最后一个字符是否相同。最基本的方法是简单地比较第一个和最后一个字符,就完成了。 str=“ababa”//将返回真值。 str=“abab”//将返回false。 但是有没有一种方法可以使用模式匹配器和预定义的正则表达式来比较整个字符串?

  • 我试图使用正则表达式来检查字符串中的第一个和最后一个字符是否是a-z之间的字母字符。 我知道这与第一个字符匹配: 但是我如何检查最后一个字符呢? 这: 不起作用。我怀疑这两个条款之间应该有什么区别,但我不知道是什么!

  • 这工作正常,所以如果歌曲名称是这是*名称,它将创建别名。但是,如果名称在开头或结尾有特殊字符它将创建 - 在两端创建连字符。

  • 问题内容: 这是一些示例输入: 我想提取代表实际类型的字符串。所以我的输出是: 这是我到目前为止使用的正则表达式(因为它是Java语言,所以进行了两次转义): 它适用于,但不适用于其他两个。我认为最好的解决方案是基本上说“在最后一个冒号之后得到所有内容”,但我不确定如何做。请注意,它还必须包含这些内容。 问题答案: 您不需要正则表达式: 只需找到最后一个,然后把所有东西都拿走。然后修剪它以删除前导

  • 我在SO和web上都发现了很多关于这个主题的变化,但大多数(如果不是全部的话)要求至少一个字母和一个数字。我至少需要一封信。我已经试过了,但还没有成功,我需要的是字符串只包含字母、字母和数字(任意顺序),允许使用破折号和空格,但不能在字符串的开头或结尾。下面是它现在的样子: 如何添加检查是否至少有一个字符? 不管它是在开头还是结尾,或者它和数字之间是否有空格或破折号。只要至少有一个字符。

  • 所以我想用正则表达式匹配第一个数字和最后四个数字。 我可以使用获取最后4个数字,但无法将第一个和最后四个数字合并在一起。尝试了多种组合。