Используя кавычку в представляет в виде строки в Delphi [дубликат]

Шаблон #(\S*) будет соответствовать #, за которым 0+ раз будет непробельный символ в захваченной группе. Это также будет соответствовать одному #. Строка #World#place#live. не содержит пробельных символов, поэтому вся строка будет сопоставлена.

Вместо этого вы можете сопоставить их, используя класс отрицанных символов. Соответствие #, за которым следует отрицательный класс символов, который не соответствует символу # или пробелу.

#[^#\s]+

Regex demo

const strings = [
  "#World is a #good #place to #live.",
  "#World#place#live."

];
let pattern = /#[^#\s]+/g;

strings.forEach(s => {
  console.log(s.match(pattern));
});

19
задан Community 23 May 2017 в 12:34
поделиться

4 ответа

Вам нужна другая кавычка для выхода из кавычки:

Writeln('I''m in your head'); //prints: I'm in your head
Writeln(''''); //prints: '

См. также этот вопрос .

45
ответ дан 30 November 2019 в 02:10
поделиться

Delphi имеет QuotedStr() функция, которая добавляет кавычки вокруг строки и делает выход апострофов в строке автоматически.

procedure MyForm.MyProc;
var str : string;
begin
  str = QuotedStr(MyForm.Edit1);
  ...
end;

QuotedStr() поместит содержание поля редактирования в апострофы. Если поле редактирования будет содержать апострофы, то их правильно оставят.

13
ответ дан 30 November 2019 в 02:10
поделиться

Подобный Вопрос здесь:

, Как делает символы ESC в строке Delphi

одинарные кавычки Покрытий и символы ESC

4
ответ дан 30 November 2019 в 02:10
поделиться

Я обычно использую эти QuotedStr функция для фиксации строк с кавычками в них. Кроме того, я часто нахожу полезным определить константы как CRLF и TAB, которые представляют #13#10 и #9 соответственно. Иногда, это кажется более ясным (мне, по крайней мере), чтобы сделать что-то похожее с кавычками.

1
ответ дан 30 November 2019 в 02:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: