LINUX.ORG.RU

Как найти все вхождения текста, ограниченного символами?

 


0

1

Подскажите, люди добрые Есть многострочный текст, как в нём найти все вхождения, заключённые между одинарными кавычками, но внутри могут содержаться двойные кавычки? Что-то я попробовал сам - не получается, погуглил - ничего не нашёл

Вот визуализацию сделал: https://disk.yandex.ru/i/k-ps9dD4oCYa7w Разным цветом - это должно получится 3 совпадения

Возможно тебе понадобится не жадное (non-greedy) поведение - это ? после шаблона.

Посмотри здесь - https://regex101.com/r/ZYrqh1/1

Многострочный текст превращается в однострочный заменой символа новой строки на что-то другое, что не встречается, и потом заменой обратно.

blex ★★
()
Ответ на: комментарий от AlexSTAL

Так двойные или одинарные тебе нужны? Из твоего вопроса совершенно не понятно чего ты хочешь.

Есть многострочный текст

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

По ссылке яндекс.ру я ходить не буду

Clockwork ★★★★★
()
Ответ на: комментарий от Clockwork

Текст (как убрать под спойлер не нашёл)

19:18.316010-15697,DBMSSQL,6,process=rphost,p:processName=DO2_BUH,OSThread=8432,t:clientID=82,t:applicationName=1CV8C,t:computerName=cmk-000,t:connectID=37251346,SessionID=5575976,Usr=Иванова,AppID=1CV8C,DBMS=DBMSSQL,DataBase=SERVER\DO2,Trans=1,dbpid=143,Sql=‘INSERT INTO #tt61 (_Fld2366RRef,_Fld2367,_Fld2368,_Fld2369,_Fld2370,_Fld2371,_Fld2372,_Fld10221,_Fld10222RRef,_Fld2373,_Fld2374,_Fld2375,_Fld2376,_Fld2377) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?)’,Prm=’ p_0: 0xB84520677CD59E3311EAD133383A461E p_1: 63840392164721N p_2: 5575976N p_3: 40240109100000 p_4: 0.001N p_5: 1N p_6: ‘‘{«ИнфКл»:«ТонкийКлиент»,«Платф»:«8.3.23.1912»,«Конф»:«Документооборот 8, редакция КОРП 2.1»,«КонфВер»:«2.1.13.28»,«Разд»:[0]}’’ p_7: 0x9B7E6CE15B13733E4F2C92EE4A07175E p_8: 0xB8A708F1EA69F49B11EEA9438B676576 p_9: 40240109101918 p_10: 63840392164721N p_11: ‘‘Иванова’’ p_12: 40240109131918 p_13: FALSE

p_0: 0xB84520677CD59E3311EAD133383A461D p_1: 63840392298484N p_2: 5575976N p_3: 40240109100000 p_4: 0.001N p_5: 1N p_6: ‘‘{«ИнфКл»:«ТонкийКлиент»,«Платф»:«8.3.23.1912»,«Конф»:«Документооборот 8, редакция КОРП 2.1»,«КонфВер»:«2.1.13.28»,«Разд»:[0]}’’ p_7: 0x9B7E6CE15B13733E4F2C92EE4A07175E p_8: 0xB8A708F1EA69F49B11EEA9438B676576 p_9: 40240109101918 p_10: 63840392298484N p_11: ‘‘Иванова’’ p_12: 40240109131918 p_13: FALSE

p_0: 0xB81E20677CD59E3311E9E9BDFF28BD27 p_1: 63840392306528N p_2: 5575976N p_3: 40240109100000 p_4: 3.016N p_5: 1N p_6: ‘‘{«ИнфКл»:«ТонкийКлиент»,«Платф»:«8.3.23.1912»,«Конф»:«Документооборот 8, редакция КОРП 2.1»,«КонфВер»:«2.1.13.28»,«Разд»:[0]}’’ p_7: 0x00000000000000000000000000000000 p_8: 0x00000000000000000000000000000000 p_9: 40240109101918 p_10: 63840392309544N p_11: ‘‘Иванова’’ p_12: 40240109131918 p_13: FALSE ’,RowsAffected=3,Context=‘ОбщийМодуль.Вызов : ОбщийМодуль.ОценкаПроизводительностиВызовСервера.Модуль.ЗафиксироватьДлительностьКлючевыхОпераций ОбщийМодуль.ОценкаПроизводительностиВызовСервера.Модуль : 174 : НаборЗаписей.Записать(Ложь);’

AlexSTAL
() автор топика
Ответ на: комментарий от AlexSTAL

в оригинале текста много переносов, при вставке они схлопнулись… Мне нужно три текста получить, заключённого в одинарные кавычки:

  1. Sql=‘INSERT INTO #tt61 (_Fld2366RRef,_Fld2367,_Fld2368,_Fld2369,_Fld2370,_Fld2371,_Fld2372,_Fld10221,_Fld10222RRef,_Fld2373,_Fld2374,_Fld2375,_Fld2376,_Fld2377) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?)’

  2. Очень длинный, внутри содержаться парные одиночные кавычки ''

  3. Context=‘ОбщийМодуль.Вызов : ОбщийМодуль.ОценкаПроизводительностиВызовСервера.Модуль.ЗафиксироватьДлительностьКлючевыхОпераций ОбщийМодуль.ОценкаПроизводительностиВызовСервера.Модуль : 174 : НаборЗаписей.Записать(Ложь);’

AlexSTAL
() автор топика