Строка, разделенная обратной косой чертой, не разделяется - PullRequest
0 голосов
/ 08 ноября 2019

Когда я разделяю строку с помощью обратной косой черты, она на самом деле не разделяется. Скорее всего, это удаление обратной косой черты

Я пробовал разные комбинации. Но, похоже, ни один из них не работает так, как я ожидал.

<!DOCTYPE html>
<html>
<body>

<p>Click the button to display the array values after the split.</p>

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>
function myFunction() {
  var str = "How\are you doing today?";
  var res = str.split("\\");
  console.log('res is', res);
  document.getElementById("demo").innerHTML = res;
}
</script>

</body>
</html>

Я ожидаю, что переменная res будет представлять собой массив с двумя значениями, первое из которых будет «Как», а второе - «Вы делаете сегодня?». Но res - это массив из 1 значения 'Как дела сегодня?'

1 Ответ

0 голосов
/ 08 ноября 2019

Поскольку обратная косая черта является escape-символом без экранирования, вы не найдете его в исходной строке, поэтому split() не найдет ничего для разделения, возвращая исходную строку .

var str = "How\are you doing today?"; // backslash is an escape character...
console.log("My string: ", str); // So you won't find it in the string
var res = str.split("\\");
console.log('My String again: ', res[0]); // That's because you get back the original string
...