Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.05.2011, 17:49
Интересующийся
Отправить личное сообщение для setter Посмотреть профиль Найти все сообщения от setter
 
Регистрация: 04.05.2011
Сообщений: 19

регулярное выражение, выборка
Здравствуйте.
Нужно при помощи регулярки вытащить выделенное, вот исходный текст, с которым должна работать регулярка:
Цитата:
MCICommand("open <SrcDir>\sample.mpg alias MPEG style child parent <This>")
pw=PubWidth()
ph=PubHeight()

For i=0 To Infinity
If (POS(LTrim$,txt$) | POS(RTrim$,txt$) | POS(Empty$,txt$)) Then
txt$=StrChange(txt$,RTrim$,CRLF$)
txt$=StrChange(txt$,LTrim$,CRLF$)
txt$=StrChange(txt$,Empty$,CRLF$)
Else
Break()
End
Next i
То, что выделено жирным, должно обработаться следующей регуляркой:
Код:
/^[ \t]*[A-Za-z0-9_]+(?=\()/g
а то, что выделено жирным и подчеркнуто, должно обработаться примерно такой регуляркой:
Код:
/[^(=][A-Za-z0-9_]+(?=\()/g
Но, второй код так же выбирает и MCICommand, чего не должно быть
Ответить с цитированием
  #2 (permalink)  
Старый 25.05.2011, 21:29
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Сообщение от setter
Но, второй код так же выбирает и MCICommand, чего не должно быть
Таки отреж его сразу, потом работай ркгулярными выражениями...
Ответить с цитированием
  #3 (permalink)  
Старый 26.05.2011, 04:04
Интересующийся
Отправить личное сообщение для setter Посмотреть профиль Найти все сообщения от setter
 
Регистрация: 04.05.2011
Сообщений: 19

Сообщение от ksa Посмотреть сообщение
Таки отреж его сразу, потом работай ркгулярными выражениями...
его не нужно отрезать, он должен быть в тексте
Ответить с цитированием
  #4 (permalink)  
Старый 26.05.2011, 09:40
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Сообщение от setter
он должен быть в тексте
Таки пусть будет... Кто мешает тебе сделать "копию" того текста и работать с ней?
Ответить с цитированием
  #5 (permalink)  
Старый 26.05.2011, 11:28
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

[(= ]([A-Za-z0-9_]+)(?=\()

в RegExp.$1 будет все, что выделено жирным и подчеркнуто.
Ответить с цитированием
  #6 (permalink)  
Старый 27.05.2011, 09:08
Интересующийся
Отправить личное сообщение для setter Посмотреть профиль Найти все сообщения от setter
 
Регистрация: 04.05.2011
Сообщений: 19

Сообщение от Riim Посмотреть сообщение
[(= ]([A-Za-z0-9_]+)(?=\()

в RegExp.$1 будет все, что выделено жирным и подчеркнуто.
это конечно хорошо, но мне нужно чтобы сами скобки и знак равно не затрагивало
Ответить с цитированием
  #7 (permalink)  
Старый 27.05.2011, 09:14
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

RegExp.$1 не затрагивает. В js нет поиска с "заглядыванием назад", т. е. если нужно что-то сзади проверить, то оно точно будет в основном результате.
Ответить с цитированием
  #8 (permalink)  
Старый 27.05.2011, 10:06
Интересующийся
Отправить личное сообщение для setter Посмотреть профиль Найти все сообщения от setter
 
Регистрация: 04.05.2011
Сообщений: 19

Интересно, но у меня из строки вида <const> выдерает только const следующий код: [^<][A-Za-z0-9_]*(?=>)
Ни "<", ни ">" он не затрагивает. А почему тогда в другом коде так нельзя?
Ответить с цитированием
  #9 (permalink)  
Старый 27.05.2011, 10:29
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Сообщение от setter
Ни "<", ни ">" он не затрагивает
[^<] совпадает с первой буквой, здесь "<" и не должен в результат попадать, а (?=>) это поиск с "заглядыванием вперед", который есть в js.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка e-mail регулярное выражение mycoding Общие вопросы Javascript 4 09.02.2017 10:12
Не пойму регулярное выражение Sweet Общие вопросы Javascript 1 08.07.2010 21:20
регулярное выражение theo_ Общие вопросы Javascript 15 21.06.2010 10:29
Регулярное выражение для поиска смайлов. NightmareZ Общие вопросы Javascript 13 23.06.2009 13:12
регулярное выражение demi Общие вопросы Javascript 3 10.03.2009 13:10