stringlib::maskMetaСпециальные символы регулярного выражения маски
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
stringlib::maskMeta(str)
stringlib::maskMeta(str) генерирует регулярное выражение (для использования с strmatch) это совпадает точно со строкой str.
С версии 3.2 MuPAD®, strmatch соответствие регулярного выражения использования. Искать некоторую дословную подстроку поэтому требует специальных символов “выхода”, таких как * или (). stringlib::maskMeta выполняет эту задачу.
Попытка найти "a+b" в строке "a+b+c" через strmatch перестал работать из-за особого характера "+" в регулярных выражениях, но, почти по той же причине, "a*b" найден:
strmatch("a+b+c", "a+b"),
strmatch("a+b+c", "a*b")![]()
Используя stringlib::maskMeta, мы теряем способность использования регулярных выражений, но можем легко искать дословные строки:
strmatch("a+b+c", stringlib::maskMeta("a+b")),
strmatch("a+b+c", stringlib::maskMeta("a*b"))![]()
Выход stringlib::maskMeta только другая строка, таким образом, комбинации с другими строками (содержащий метасимволы регулярного выражения) возможны:
strmatch("a+b+c", "^".stringlib::maskMeta("a+b")),
strmatch("a+b+c", "^".stringlib::maskMeta("b+c"))![]()
|
Непустая строка |
Строка