Используйте регулярное выражение , как показано ниже, с PHP preg_match () :
/<meta name="clan_name" content="([^"]+)"/
Если вы не знакомы с регулярными выражениями, читайте дальше.
Косая черта в начале и в конце разделяет регулярное выражение. Материал внутри разделителей довольно прост, за исключением конца.
Квадратные скобки ограничивают класс символов , а знак вставки в начале класса символов является оператором отрицания; вместе взятые, этот класс символов:
[^"]
означает «соответствовать любому символу, который не является двойной кавычкой».
+ - это квантификатор , который требует, чтобы предыдущий элемент встречался как минимум один раз, и соответствует такому количеству предыдущего элемента, которое появляется рядом с первым. Итак, это:
[^"]+
означает «соответствовать одному или нескольким символам, которые не являются двойными кавычками».
Наконец, круглые скобки заставляют механизм регулярных выражений хранить что-либо между ними в подшаблоне . Итак, это:
([^"]+)
означает «сопоставить один или несколько символов, которые не являются двойными кавычками, и сохранить их как соответствующий подшаблон.
В PHP preg_match () сохраняет совпадения в массиве, который вы передаете по ссылке. Полный шаблон хранится в первом элементе массива, первый подшаблон во втором элементе и т. Д., Если есть дополнительные подшаблоны.
Итак, если ваша HTML-страница находится в переменной "$ page", следующий код:
$matches = array();
$found = preg_match('/<meta name="clan_name" content="([^"]+)"/', $page, $matches);
if ($found) {
$clan_name = $matches[1];
}
Должен получить то, что вы хотите.