2012-03-24 1 views
2

у меня есть этот скрипт: val.split(/(?:,.|)+/)JavaScript Jquery как разделить любой символ, отличный от текста

и мне нужно разделить любой символ, отличный от буквы, как новая линия, пустое пространство, «Tab» или точка ... и т. д.

Я знаю, что вы не можете писать все символы, поэтому дайте мне один хороший пример.

+0

http://www.regular-expressions.info/reference.html –

ответ

2

[\W_0-9] должен охватывать все их.

\W: Все, что не является буквой, числом или знаком подчеркивания; затем добавьте _ и все цифры от 0 до 9. Это имеет преимущество покрытия не являющихся ASCII-символы, такие как é ü т.д ...

+0

Обложка Что? Что делают различные персонажи? –

+0

\ W = все, что не является буквой, числом или нижним краем; затем добавьте _ и все цифры от 0 до 9. Это полезно для покрытия букв без ASCII, таких как é ü и т. Д. – gotofritz

0

Попробуйте это:

var myString = "Hello, I'm a string that will lose all my non-letter characters (including 1, 2, and 3, and all commas... everything)" 
myString.replace(/[^a-z\s]/gi, '').split(" "); 

Это будет разбить строку в массив, раздевая все небуквенные символы как это идет.

1

Вы можете использовать [], чтобы создать диапазон возможных символов и префикс [^, чтобы инвертировать диапазон. Итак:

val.split(/[^a-z]+/i) 
0

Я знаю, вы не можете писать все символы, так что дайте мне один хороший пример.

В классах символов вы можете перечислять символы с помощью -; как так: [a-zA-Z]

и мне нужно разделить любой символ, отличный от буквы, как новая линия, пустое пространство, «закладка» или точка ... и т.д.

Вы можете инвертировать группу символов как это: [^a-zA-Z]

у меня есть этот скрипт: val.split(/(?:,.|)+/)

Какие теперь может быть этот скрипт: val.split(/[^a-zA-Z]+/)

Смежные вопросы