Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Регвыражение. Прошу помощи!  [new]
denisdenisramblerru
Member

Откуда:
Сообщений: 21
Подскажите плиз!!!!!!!!
Как регулярным выражением теги в lower и " в "e заменить

<row Val1="""" vaL2="" VAL3="Dfger" v3Al="TeTris""" val5="1=""1""" />

Заменить на

<row val1=""e" val2="" val3="Dfger" v3al="TeTris"e" val5="1="e1"e" />

С уважением
16 окт 12, 21:13    [13329478]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
Sergey Lookin
Member

Откуда: Санкт-Петербург
Сообщений: 231
SELECT
REGEXP_REPLACE('<row Val1="""" vaL2="" VAL3="Dfger" v3Al="TeTris""" val5="1=""1""" />',
'("[^"]*?)"*?([^"]*?")\s',
'\1\2 ' "REGEXP_REPLACE"
FROM dual;

как-то так.
16 окт 12, 22:00    [13329576]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
denisdenisramblerru
Member

Откуда:
Сообщений: 21
Sergey Lookin,

Спасибо за ответ
А существуют сайты где это можно проверить именно для оракле?
16 окт 12, 23:00    [13329773]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
suPPLer
Member

Откуда: Харків, Україна
Сообщений: 7794
Блог
denisdenisramblerru,

ага: http://apex.oracle.com

Регистрируетесь, заходите, открываете SQL Workshop→SQL Commands и тестируете до победного...
16 окт 12, 23:36    [13329885]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
кит северных морей
Member

Откуда: krsk / nyc / krsk
Сообщений: 882
suPPLer,

лучше sqlfiddle )

http://sqlfiddle.com/#!4/d41d8/3213
17 окт 12, 06:03    [13330529]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
suPPLer
Member

Откуда: Харків, Україна
Сообщений: 7794
Блог
кит северных морей,

спасибо за ссылку.
17 окт 12, 10:37    [13331565]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
Добрый Э - Эх
Guest
2 all сорри за злостный офф-топ

2 кит северных морей,

если не секрет, где в Кырске промышляешь Ораклом? Вам там помощники на неполный рабочий день или на дистанционную работу не нужны?

Если тут отвечать не хочешь, то можешь написать на почту: saler2(собака)yandex(точка)ru
17 окт 12, 11:29    [13331948]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
Добрый Э - Эх
Guest
З.Ы.

знаю и умею не только Оракл. Типа, резюме
17 окт 12, 11:33    [13331982]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
denisdenisramblerru
Member

Откуда:
Сообщений: 21
Докручиваю с кавычками
а как быть с тегами!!!!!
17 окт 12, 12:18    [13332467]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
denisdenisramblerru
Member

Откуда:
Сообщений: 21
не работает!!!!
Люди помогите
17 окт 12, 15:47    [13334903]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
denisdenisramblerru
Member

Откуда:
Сообщений: 21
коллеги!Help!
подскажите как теперь группу 1 в нижний регистер опустить,
а в группе двойной повтор кавычек убрать?

SELECT
REGEXP_REPLACE('<row S1="""""" Ss2="ва""Э""aaz" s3="""aa=" s4="ddd""" s5="testm" s6="ss=""""" />',
' (.+?)="(([^"]*("")*)*)"',
' \1=\2 ') "RESULT"
FROM dual;

на выходе:
<row S1="""" Ss2=ва""Э""aaz s3=""aa= s4=ddd"" s5=testm s6=ss="""" />
а должно быть:
<row s1="" ss2=ва"Э"aaz s3="aa= s4=ddd" s5=testm s6=ss="" />
22 окт 12, 22:56    [13359393]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
denisdenisramblerru
Member

Откуда:
Сообщений: 21
denisdenisramblerru
коллеги!Help!
подскажите как теперь группу 1 в нижний регистер опустить,
а в группе двойной повтор кавычек убрать?

SELECT
REGEXP_REPLACE('<row S1="""""" Ss2="ва""Э""aaz" s3="""aa=" s4="ddd""" s5="testm" s6="ss=""""" />',
' (.+?)="(([^"]*("")*)*)"',
' \1=\2 ') "RESULT"
FROM dual;

на выходе:
<row S1="""" Ss2=ва""Э""aaz s3=""aa= s4=ddd"" s5=testm s6=ss="""" />
а должно быть:
<row s1="" ss2=ва"Э"aaz s3="aa= s4=ddd" s5=testm s6=ss="" />


коллеги!Help!
подскажите как теперь группу 1 в нижний регистер опустить,
а в группе №2 двойной повтор кавычек убрать?

SELECT
REGEXP_REPLACE('<row S1="""""" Ss2="ва""Э""aaz" s3="""aa=" s4="ddd""" s5="testm" s6="ss=""""" />',
' (.+?)="(([^"]*("")*)*)"',
' \1=\2 ') "RESULT"
FROM dual;

на выходе:
<row S1="""" Ss2=ва""Э""aaz s3=""aa= s4=ddd"" s5=testm s6=ss="""" />
а должно быть:
<row s1="" ss2=ва"Э"aaz s3="aa= s4=ddd" s5=testm s6=ss="" />
22 окт 12, 23:39    [13359523]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
denisdenisramblerru
Member

Откуда:
Сообщений: 21
denisdenisramblerru,

может это не делается рег. выражениями?
23 окт 12, 00:00    [13359561]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
123йй
Guest
denisdenisramblerru,

пилите дальше, т.к. будут ошибки
SELECT r
  FROM (select replace('<row S1="""""" Ss2="ва""Э""aaz" s3="""aa=" s4="ddd""" s5="testm" s6="ss=""""" />','""','"') r from dual )
 MODEL RETURN UPDATED ROWS
 PARTITION BY (ROWNUM rn)
   DIMENSION BY (0 dim)
   MEASURES(r, CAST('' AS VARCHAR2(3550)) word)
   RULES ITERATE(99) UNTIL (word[0] IS NULL)
                (word[0] =regexp_substr(r[0],'( [^=]+)="', 1, ITERATION_NUMBER + 1),
                 r[0] =replace(r[0],word[0],lower(word[0]))
               );
23 окт 12, 10:57    [13360783]     Ответить | Цитировать Сообщить модератору
 Re: Регвыражение. Прошу помощи!  [new]
denisdenisramblerru
Member

Откуда:
Сообщений: 21
123йй,

спасибо
26 окт 12, 22:31    [13382881]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить