Форматирование текста
Подскажите варианты реализации:
Есть текст: Воскресенье, 17.07.2011, 19:50 Как можно сделать чтобы скрипт вывел только значения после второй запятой, а именно 19:50 |
Например, так:
str= "Воскресенье, 17.07.2011, 19:50"; alert(str.substr(str.indexOf(",", str.indexOf(",")+1)+2)); Или так: str="Воскресенье, 17.07.2011, 19:50"; alert(str.split(", ")[2]); Или так: str= "Воскресенье, 17.07.2011, 19:50"; alert(str.replace(/[\S\s]*?,[\S\s]*?,\s/, "")) На регулярках, кстати, можно ещё минимум пять способов придумать) |
Thanks ;)
|
А если текст состоит только из пробелов, то как отформатировать? (каждое слово после пробела)
|
Вы о таком, что ли?
str="Воскресенье 17.07.2011 19:50"; alert(str.match(/\d\d:\d\d/)); |
Нет вот о таком
Воскресенье 17 07 2011 19 50 |
Например, так.
str= "Воскресенье 17 07 2011 19 50"; alert(str.match(/\d\d\s\d\d$/)); И вообще, раз возникают такие проблемы - надо учить регулярные выражения (и их особенности в JS) самому. |
Буду разбираться)
|
Извиняюсь! Но не могу я понять как это делается! Помогите пожалуйста!
http://site.myst.ru/_ph/1/189358381.jpg Как вывести только 189358381.jpg и еще http://site.myst.ru/_ph/1/ |
uExpo, судя по всему, вы так и не продвинулись в изучении строковых ф-ций... Вам нужно то, что после последнего слеша? Тогда так...
str= "http://site.myst.ru/_ph/1/189358381.jpg"; arr= /(.*\/)(.*$)/.exec(str); alert(arr[1] + "\n" + arr[2]); |
str= "http://site.myst.ru/_ph/1/189358381.jpg"; arr= /[^\/]+$/.exec(str); alert(arr); Чаго мудрить то. |
Aetae, ему нужны были обе части.
|
А, ну и черт с ним, пойду спать.)
|
Aetae, правильно, спокойной ночи)
|
Извините пожалуйста, перечитал мануал, очень туго доходит, поясните пожалуйста следующие:
Вот arr[2] выведет все после последнего слеша, поясните как это происходит? |
Метод exec возвращает массив, где 0-вым элементом будут последние совпавшие символы, а все остальные индексы - символы, попавшие в скобки. В данном случае всё после последнего слеша попадает во вторую скобку. Она будет доступна через arr[2].
|
Часовой пояс GMT +3, время: 19:17. |