Regex — экранирование специальных символов в JavaJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Regex — экранирование специальных символов в Java

Сообщение Anonymous »

Я создал следующее регулярное выражение и заставил его работать на Javascript (языке программирования, к которому я больше всего привык)

Код: Выделить всё

/\[(?[a-zA-Z|\s]+)\]\((?\/\S+)\)/g
Предполагается, что такая строка будет найдена в большом тексте с уценкой:
[Моя ссылка здесь](/my/relative/path/here)
Проблема в том, что при использовании Java я получаю сообщения об ошибках о «недопустимом escape-символе в строковом литерале», и я не могу заставить его работать, потому что я действительно думаю, что экранирую правильные символы, а именно: ( [ / ) и ]
Мой код в JavaScript такой:

Код: Выделить всё

function findLinks(text, urlBase) {
reg = new RegExp(/\[(?[a-zA-Z|\s]+)\]\((?\/\S+)\)/g)
const result = text.replace(
reg,
`[$](${urlBase}$)`
);
console.log(text.match(reg))
console.log(result);
}

findLinks("I intend to have a big mardkown text here, with some [links](/link/a) here and also [there](/anotherlink/b)", "https://mywebsite.com")
Часть моего кода на Java на данный момент выглядит так:

Код: Выделить всё

contentProcess = contentProcess.replaceAll("\[(?[a-zA-Z|\s]+)\]\((?\/\S+)\)", String.format("[$](%s$)", urlBase))
Мне также еще предстоит проверить, будет ли функция String.format() добавляться в мою urlBase или нет, но я смогу сделать это позже, как только смогу получить регулярное выражение для работы

Подробнее здесь: https://stackoverflow.com/questions/784 ... ng-in-java
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»