Подскажите, как произвести замену в Н++

12 3
JB
На сайте с 09.05.2014
Offline
219
719

Часть каждой строки заменить другой частью, то есть каждый "|" заменить каждым "\n.*\("

Где \n.*\( - это начало каждой строки, а | это часто встречающееся в строке  выражение после

Можно ли так вообще?

ArbNet
На сайте с 27.10.2019
Offline
91
#1
Можно
Блажен, кто не стремится сделать лучше: он не рискует быть не понятым.
SeVlad
На сайте с 03.11.2008
Offline
1527
#2
JungleBox :
Где \n.*\( - это начало каждой строки, а | это часто встречающееся в строке  выражение после

\n - это не "начало новой строки", а перенос. ( \n.*\ в твоём контексте вообще чушь)

Символ | - не "часто встречающееся в строке  выражение", а разделитель.

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

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Топики помощи с ⓌordPress (https://searchengines.guru/ru/forum/1032910 ) и основы безопасности сайтов ( https://searchengines.guru/ru/forum/774117 ). *** Помощь\консультации в топиках форума - БЕСПЛАТНО. Платные услуги ( https://wp.me/P3YHjQ-3 ) - с бюджетом от 150$ ***
JB
На сайте с 09.05.2014
Offline
219
#3

<a href="https://somesite.com/page1">(anchor1|anchor2|ahchor3|anchor4)</a>
<a href="https://somesite.com/page2">(anchor5|anchor6|ahchor7|anchor8)</a>
<a href="https://somesite.com/page3">(anchor9|anchor10|ahchor11|anchor12)</a>
 
Превратить в построчное перечисление анкоров а то есть в 12 строчек.

\n.*\( это регулярка от начала строки до открывающейся скобки.

D
На сайте с 28.06.2008
Offline
1032
#4
regex101: build, test, and debug regex
regex101: build, test, and debug regex
  • Firas Dib
  • regex101.com
The advertisements are provided by Carbon, but implemented by regex101. No cookies will be used for tracking and no third party scripts will be loaded. The information is fetched using a JSONP request, which contains the ad text...
JB
На сайте с 09.05.2014
Offline
219
#5

<a href="https://somesite.com/page1">(anchor1|anchor2|ahchor3|anchor4)</a>


Вот из этого сделать четыре анкора перечисленных в столбик. ) только таких строчек много и нужно разделать каждую на строчки анкоров)


Куда уж еще проще

SeVlad
На сайте с 03.11.2008
Offline
1527
#6
JungleBox #:
Превратить в построчное перечисление анкоров а то есть в 12 строчек.

В два прохода.

1. Регулярками

<a href.*\((.*)\).*<\/a>


заменить на

\1

(это в Акелпаде. В N++ может быть чуть другой синтаксис)

2. Уже без регулярок, но с Esc-последовательностями заменить

|

на

\n


Профит!


JungleBox #:
\n.*\( это регулярка от начала строки до открывающейся скобки.
Только не от начала (текущей), а от конца предыдущей. Это таки разные вещи.
JB
На сайте с 09.05.2014
Offline
219
#7

Интересен вариант с регуляркой, но желательно чтобы проверить где то)

У меня не сработало на этом коде:


<a href="https://somesite.com/page1">(anchor1|anchor2|ahchor3|anchor4)</a>

<a href="https://somesite.com/page2">(anchor5|anchor6|ahchor7|anchor8)</a>

<a href="https://somesite.com/page3">(anchor9|anchor10|ahchor11|anchor12)</a>
SeVlad
На сайте с 03.11.2008
Offline
1527
#8
JungleBox #:
Интересен вариант с регуляркой, но желательно чтобы проверить где то)

Я пишу код только если сам его проверил (или из документации, но это естественно не в данном случае).

Я проверил в акелпаде.

JungleBox #:
У меня не сработало на этом коде:
:
SeVlad #:
(это в Акелпаде. В N++ может быть чуть другой синтаксис)



JB
На сайте с 09.05.2014
Offline
219
#9

Так задача не совсем в этом, а в том чтобы превратить в гиперссылки на штмл

было это

<a href="https://somesite.com/page1">(anchor1|anchor2|ahchor3|anchor4)</a>


стало это


<a href="https://somesite.com/page1">anchor1</a>

<a href="https://somesite.com/page1">anchor2</a>

<a href="https://somesite.com/page1">anchor3</a>

<a href="https://somesite.com/page1">anchor4</a>


Это то что нужно мне. Я возможно как то не понятно выражаюсь(

Ладно

R2
На сайте с 28.06.2020
Offline
24
Rus
#10
SeVlad #:
в твоём контексте вообще чушь

П - помощник

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий