4

JavaScriptで文字列がスペースで終わっているかどうかを検証したい。前もって感謝します。

var endSpace = / \s$/;
var str = "hello world ";

if (endSpace.test(str)) {
    window.console.error("ends with space");
    return false;
}
4

6 に答える 6

4

\s[space]スペースを表すため、正規表現を追加する必要はありません

var endSpace = /\s$/;
var str = "hello world ";

if (endSpace.test(str)) {
  window.console.error("ends with space");
  //return false; //commented since snippet is throwing an error
}

function test() {
  var endSpace = /\s$/;
  var str = document.getElementById('abc').value;

  if (endSpace.test(str)) {
    window.console.error("ends with space");
    return false;
  }
}
<input id="abc" />
<button onclick="test()">test</button>

于 2015-06-01T05:55:59.937 に答える
2
var endSpace = / \s$/;

上記の行では、実際には 2 つのスペースを使用しています。1 つは ( ) で、2 つ目は\sです。それが理由です。コードが機能していません。それらの 1 つを削除します。

var endSpace = / $/; 
var str="hello world "; 
if(endSpace.test(str)) { 
 window.console.error("ends with space"); return false; 
}
于 2015-06-01T05:59:27.927 に答える
0

次のコード スニペットを使用できます -

if(/\s+$/.test(str)) {
   window.console.error("ends with space");
   return false;
}
于 2015-06-01T05:58:08.563 に答える
0

$(document).ready(function() {
  $("#butCheck").click(function() {
    var checkString = $("#phrase").val();
    if (checkString.endsWith(' ')) {
      $("#result").text("space");
    } else {
      $("#result").text("no space");
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type='text' id="phrase"></input>
<input type="button" value="Check This" id="butCheck"></input>
<div id="result"></div>

于 2015-06-01T06:05:09.233 に答える