Javascript 如何检查字符串中的最后一个字符是否为';空间';?
我的代码如下所示:Javascript 如何检查字符串中的最后一个字符是否为';空间';?,javascript,regex,Javascript,Regex,我的代码如下所示: 检查此短语 在这里,我在单词“phrase”后面放了一个空格,但是当我放一个条件语句时,它总是返回一个结果。如何检查字符串的结尾是否有空格?您可以通过以下正则表达式检查文本值是否以空格结尾: /\s$/ /\s$/表示字符串末尾有一个空格 JavaScript var mystring = $("#someid").text(); $("#someid").click( function (event) { if(/\s+$/.test(mystring))
检查此短语
在这里,我在单词“phrase”后面放了一个空格,但是当我放一个条件语句时,它总是返回一个结果。如何检查字符串的结尾是否有空格?您可以通过以下正则表达式检查文本值是否以空格结尾:
/\s$/
/\s$/
表示字符串末尾有一个空格
JavaScript
var mystring = $("#someid").text();
$("#someid").click( function (event) {
if(/\s+$/.test(mystring)) {
$("#result").text("space");
} else {
$("#result").text("no space");
}
});
正如jfriend00所注意到的\s
不仅仅意味着空格,它是空白[即也包括制表符(\t)]
如果您只需要使用空格:/$/
您的正则表达式/%(?!$)/
检查不在字符串末尾的百分号,而不是空格
如何检查字符串末尾是否有空格
使用/\s$
/。按以下方式操作:-
/(.*)\s+$/
JS:
参考一个更简单、更清晰的解决方案是使用.endsWith()
你所说的返回一个结果是什么意思?你在说什么有条件的陈述?看看我贴的小提琴。另一种方法:你是如何得到正则表达式的?我到处都能找到随机答案,但不确定正则表达式是否正确。感谢您的回答您之前发布了将
/\s+$/
作为正则表达式的fiddle,这也很有效。此正则表达式与/\s+$/
之间有什么区别?\s+
表示一个或多个空格,\s
表示单个空格。您不需要在字符串末尾多加一个空格就可以知道字符串以空格结尾,这就是为什么不需要+
的原因。从技术上讲\s
不仅仅代表一个空格。如果您只想检查一个空格,那么在正则表达式中使用一个实际的空格。/$/
。是的,您是对的,它意味着空白,也可以包括制表符(\t)。在/(.*)\s+$/
正则表达式和另一个类似的/\s$/
之间有什么区别?既然有很多选择?
/(.*)\s+$/
var mystring = $("#someid").text();
$("#someid").click(function(event) {
if(/(.*)\s+$/.test(mystring)) {
$("#result").text("space");
}
else
{
$("#result").text("no space");
}
});
"hallo ".endsWith(" "); // true