Регулярные выражения. Помогите!
Всем привет! :thanks:
Начал заниматься изучением регулярных выражений. При написании одной функции столкнулся с проблемой. Например есть код: var a = '[Hello World] - Привет Мир', s = a.match(/[[\S\s]*\]/); alert(s) Как сделать, что бы результат выводился без квадратных скобок? Помогите пожалуйста! |
это было в теме http://javascript.ru/forum/misc/2296...ka-teksta.html
|
Не Было.
|
сделай еще один матч на результат - только текст, без скобок
|
griffonn,
А в одном "матче" это никак не реализовать? |
Цитата:
На большее мозгов не хватает :D |
можно наверное, например /(\[)([\S\s]*)(\])/, и в результатах $2
но лично у меня так ни разу без проблем не получилось |
xD Да.. JS жесток)
Пока реализовал в 2 этапа. Но нужно придумать, как в 1 сделать.. |
Вариант...
var a = '[Hello World] - Привет Мир', s = a.match(/\[([\S\s]*)\]/); alert(s[1]) |
Блё
var a = '[Hello World] - Привет Мир', s = a.replace(/\[.*\]/g, ""); alert(s) |
Или, возможно вы имели ввиду:
var a = '[Hello World] - Привет Мир', s = a.replace(/[\[\]]/g, ""); alert(s) |
рони,
Спасибо!) То, что и нужно)) Gvozd, Твой вариант удаляет скобки и то, что в скобках. |
Gvozd,
В моем начальном коде результат выводился в таком виде "[Hello World]". Мне же нужно было, что бы выводилось - "Hello World". =) |
Вариант с replace ...
var a = '[Hello World] - Привет Мир', s = a.replace(/.*\[|\].*/g, ""); alert(s) |
UPD: oops...
|
Правелен вариант от рони, но в качестве бреда:
var a = '[Hello World] - Привет Мир', s = a.match(/[^\[]*?(?=\])/); alert(s) =) И вообще: var a = '[Hello World] - Привет Мир', s = a.match(/[^\[\]]+/); alert(s) =)) |
Aetae, писать регулярки в пять утра - это сурово.
|
Часовой пояс GMT +3, время: 00:59. |