Processing:Справочник языка Processing/match(): различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
 
Нет описания правки
 
(не показаны 3 промежуточные версии 2 участников)
Строка 1: Строка 1:
{{Processing панель перехода}}
{{Processing панель перехода}}
{{Перевод от Сubewriter}}
{{Перевод от Сubewriter}}
{{Myagkij-редактор}}
{{Myagkij-редактор}}
{{Черновик}}


= match() <ref>[https://processing.org/reference/match_.html processing.org - match()]</ref>=
= match() <ref>[https://processing.org/reference/match_.html processing.org - match()]</ref>=
Строка 10: Строка 7:
==Обозначение==
==Обозначение==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
match()
match()
</syntaxhighlight>
</syntaxhighlight>
Строка 26: Строка 23:
==Синтаксис==
==Синтаксис==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
match(str, regexp)
match(str, regexp)
</syntaxhighlight>
</syntaxhighlight>
Строка 32: Строка 29:
==Параметры==
==Параметры==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
str    – строка, которую нужно найти. Тип данных – String.
str    – строка, которую нужно найти. Тип данных – String.
regexp – регулярное выражение, используемое для поиска совпадений. Тип данных – String.
regexp – регулярное выражение, используемое для поиска совпадений. Тип данных – String.
Строка 39: Строка 36:
==Возвращаемое значение==
==Возвращаемое значение==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
Массив String[].
Массив String[].
</syntaxhighlight>
</syntaxhighlight>
Строка 47: Строка 44:
=== №1 ===
=== №1 ===


<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" enclose="div">
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
String s = "Inside a tag, you will find <tag>content</tag>.";
String s = "Inside a tag, you will find <tag>content</tag>.";
       //  "Внутри тега вы найдете <tag>содержимое</tag>."
       //  "Внутри тега вы найдете <tag>содержимое</tag>."
Строка 58: Строка 55:
=== №2 ===
=== №2 ===


<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" enclose="div">
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
String s1 = "Have you ever heard of a thing called fluoridation. ";  
String s1 = "Have you ever heard of a thing called fluoridation. ";  
         //  "Слышали ли вы о такой вещи, как фторирование?"
         //  "Слышали ли вы о такой вещи, как фторирование?"
Строка 88: Строка 85:


<references />
<references />
{{SEO
 
|Заголовок статьи=Processing: match() / Онлайн справочник - wikihandbk.com
{{Навигационная таблица/Портал/Processing}}
|Ключевые слова=processing, match() , match() processing, match() в processing
|Описание статьи=
|Изображение статьи для Open Graph=
|Адрес страницы для schemaNewsArticle=<nowiki>http://wikihandbk.com/wiki/Processing:Справочник языка Processing/match()</nowiki>
|Изображение статьи для schemaNewsArticle=<nowiki></nowiki>
|Высота изображения статьи для schemaNewsArticle=
|Ширина изображения статьи для schemaNewsArticle=
|Дата публикации для schemaNewsArticle=2018-06-17
|Автор=Мякишев Е.А.
|Издатель=myagkij
|Логотип издателя для schemaNewsArticle=<nowiki>http://wikihandbk.com/ruwiki/images/6/61/Tech_geek_logo_1x.jpg</nowiki>
|Ширина логотипа издателя для schemaNewsArticle=60
|Высота логотипа издателя для schemaNewsArticle=45
}}
{{Навигационная таблица/Справочник языка Processing}}

Текущая версия от 16:20, 4 сентября 2023

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


match() [1]

Обозначение

match()

Описание

Используется, чтобы применить на тексте регулярное выражение, а затем вернуть значения, соответствующие этому регулярному выражению (можно использовать группы). Возвращаемые значения представлены в виде массива значений String. Если совпадений нет, метод вернет нулевое значение. Если в регулярном выражении не задано групп, но совпадение найдено, метод вернет массив с длиной 1 (совпавший текст будет первым элементом этого массива).

Сначала проверьте, не дает ли этот метод нулевой результат. Если дает, тогда по заданному регулярному выражению совпадений нет. Если совпадения есть, метод вернет массив.

Если в регулярном выражении есть группы (они задаются с помощью отдельных круглых скобочек), метод вернет массив с каждым из этих совпадений (если они будут). Элемент [0] регулярного выражения вернет всю искомую строку, а группы регулярного выражения для отдельных элементов начинаются с элемента [1] (первая группа – это [1], вторая – это [2] и т.д.).

О синтаксисе для этой группы можно почитать в документации Java по классу Pattern. О синтаксисе регулярного выражения можно почитать в этом руководстве Java.

Синтаксис

match(str, regexp)

Параметры

str     строка, которую нужно найти. Тип данных  String.
regexp  регулярное выражение, используемое для поиска совпадений. Тип данных  String.

Возвращаемое значение

Массив String[].

Пример

№1

String s = "Inside a tag, you will find <tag>content</tag>.";
       //  "Внутри тега вы найдете <tag>содержимое</tag>."
String[] m = match(s, "<tag>(.*?)</tag>");
println("Found '" + m[1] + "' inside the tag.");
// напечатает в консоли:
// "Found 'content' inside the tag."

№2

String s1 = "Have you ever heard of a thing called fluoridation. "; 
        //  "Слышали ли вы о такой вещи, как фторирование?"
       s1 += "Fluoridation of water?";
         //  "Фторирование воды?"
String s2 = "Uh? Yes, I-I have heard of that, Jack, yes. Yes.";
        //  "А? Да, я... я слышал об этом, Джек, да. Да."

String[] m1 = match(s1, "fluoridation");
if (m1 != null) {  //  если не «null», значит, найдено совпадение
  // это будет напечатано в консоли, если будет найдено совпадение:
  println("Found a match in '" + s1 + "'");  
} else {
  println("No match found in '" + s1 + "'");
}

String[] m2 = match(s2, "fluoridation");
if (m2 != null) {
  println("Found a match in '" + s2 + "'");
} else {
  // а это – если совпадение найдено не будет:
  println("No match found in '" + s2 + "'");  
}

См.также

Внешние ссылки