Здравствуйте,
Интересует вопрос, есть ли возможность использовать шаблоны не только при поиске, но и при подстановке?
Т.е. в поле замена мне нужно подставить "искомый текст".
Спасибо.
[решено] Расширенная замена StringRegExpReplace
-
ALFERIUS
Re: [решено] Расширенная замена StringRegExpReplace
ALFERIUS, слишком туманно, можно конкретный пример?
-
amel27
Re: [решено] Расширенная замена StringRegExpReplace
Извиняюсь, решил другим способом.
Оригинальный файл выложить не могу. Придумывать долго.
Искал аналог замены как в линуксовом sed
если находит в тексте (шаблон поиска 1)(шаблон поиска 2)(шаблон поиска 3) то заменить на (то что нашли в первом шаблоне)(то что нашли во третьем шаблоне)
Спасибо.
Оригинальный файл выложить не могу. Придумывать долго.
Искал аналог замены как в линуксовом sed
если находит в тексте (шаблон поиска 1)(шаблон поиска 2)(шаблон поиска 3) то заменить на (то что нашли в первом шаблоне)(то что нашли во третьем шаблоне)
Спасибо.
-
Iska
Re: [решено] Расширенная замена StringRegExpReplace
ALFERIUS, это же есть. Смотрите в:
Цитата Function Reference, StringRegExp :
…
( ... ) : Group. The elements in the group are treated in order and can be repeated together. e.g. (ab)+ will match "ab" or "abab", but not "aba". A group will also store the text matched for use in back-references and in the array returned by the function, depending on flag value.
и в:
Цитата Function Reference, StringRegExpReplace:
…
replace: The text to replace the regular expression matching text with. To insert matched group text, \0 - \9 (or $0 - $9) can be used as back-references.
…
Цитата Function Reference, StringRegExp :
…
( ... ) : Group. The elements in the group are treated in order and can be repeated together. e.g. (ab)+ will match "ab" or "abab", but not "aba". A group will also store the text matched for use in back-references and in the array returned by the function, depending on flag value.
и в:
Цитата Function Reference, StringRegExpReplace:
…
replace: The text to replace the regular expression matching text with. To insert matched group text, \0 - \9 (or $0 - $9) can be used as back-references.
…
-
ALFERIUS
Re: [решено] Расширенная замена StringRegExpReplace
Подскажите пожалуйста,
есть текст:
...
00:00:13 AT&O11*D/345634563456/,3E,,,'354635ВВ'
00:00:13 OK:49,0,11
...
Ищу
$text=StringRegExpReplace($sFile,("'")&(@CRLF)&(.*"OK:".*), $1&$3 )
т.е. апостроф, возврат каретки, любое число символов, ОК:, люьое число символов хочу заменить на искомый текст без возврата каретки.
Не могу победить ошибку
$text=StringRegExpReplace($sFile,("'")&(@CRLF)&(.*"OK:"), $1&$3 )
$text=StringRegExpReplace($sFile,("'")&(@CRLF)&(.*"OK:"), $1&$3 ^ ERROR
на что он ругается?
Или как можно решить ситуацию по другому?
Спасибо.
Со скобкой решил,
Теперь ругается на замену
$text=StringRegExpReplace($sFile,("' ")&(@CRLF)&(.*"OK:".*), $1&$3)
$text=StringRegExpReplace($sFile,("' ")&(@CRLF)&(.*"OK:".*), ^ ERROR
есть текст:
...
00:00:13 AT&O11*D/345634563456/,3E,,,'354635ВВ'
00:00:13 OK:49,0,11
...
Ищу
$text=StringRegExpReplace($sFile,("'")&(@CRLF)&(.*"OK:".*), $1&$3 )
т.е. апостроф, возврат каретки, любое число символов, ОК:, люьое число символов хочу заменить на искомый текст без возврата каретки.
Не могу победить ошибку
$text=StringRegExpReplace($sFile,("'")&(@CRLF)&(.*"OK:"), $1&$3 )
$text=StringRegExpReplace($sFile,("'")&(@CRLF)&(.*"OK:"), $1&$3 ^ ERROR
на что он ругается?
Или как можно решить ситуацию по другому?
Спасибо.
Со скобкой решил,
Теперь ругается на замену
$text=StringRegExpReplace($sFile,("' ")&(@CRLF)&(.*"OK:".*), $1&$3)
$text=StringRegExpReplace($sFile,("' ")&(@CRLF)&(.*"OK:".*), ^ ERROR
-
amel27
Re: [решено] Расширенная замена StringRegExpReplace
Цитата ALFERIUS:
апостроф, возврат каретки, любое число символов, ОК:
Код:
апостроф, возврат каретки, любое число символов, ОК:
[решено] Расширенная замена StringRegExpReplace
Код:
Код: Выделить всё
$sFile = "00:00:13 AT&O11*D/345634563456/,3E,,,'354635ВВ'"&@CRLF
$sFile &= "00:00:13 OK:49,0,11"
$sText = StringRegExpReplace($sFile, "'\r\n(.*?OK:)", "'$1")
ConsoleWrite($sText &@CRLF)