백엔드 개발 PHP 튜토리얼 PHP 정규 표현식: HTML의 모든 텍스트 영역 태그를 일치시키는 방법

PHP 정규 표현식: HTML의 모든 텍스트 영역 태그를 일치시키는 방법

Jun 22, 2023 pm 09:27 PM
php 정규식 성냥 텍스트 영역 태그

HTML은 웹 페이지에 콘텐츠를 표시하는 데 일반적으로 사용되는 페이지 마크업 언어입니다. HTML에서 textarea 태그는 사용자가 텍스트를 입력하거나 편집할 수 있는 텍스트 상자를 만드는 데 사용됩니다.

페이지에서 모든 텍스트 영역 태그와 해당 내용을 추출해야 하는 경우 PHP 정규식을 사용하면 간단하고 효과적인 솔루션을 얻을 수 있습니다. 이 기사에서는 PHP 정규 표현식을 사용하여 HTML의 모든 텍스트 영역 태그를 일치시키는 방법을 배웁니다.

  1. 정규 표현식 이해

정규 표현식은 텍스트 패턴을 일치시키는 데 사용되는 표현식입니다. PHP에서는 문자열 검색, 문자열 교체 또는 입력 유효성 검사와 같은 작업에 자주 사용됩니다.

정규 표현식은 다양한 문자, 특수 문자, 메타 문자로 구성됩니다. 그 중 특수 문자에는 단일 문자를 일치시키는 데 사용되는 마침표(.)와 같이 텍스트의 특정 패턴을 일치시키는 데 사용되는 문자가 포함됩니다. 예를 들어, 수량자 메타 문자는 하나 이상의 문자를 일치시킬지 여부를 설명합니다.

  1. PHP DOM 파서 사용

PHP에서는 DOM 파서(문서 개체 모델)를 사용하여 HTML 문서를 구문 분석하고 문서에서 필요한 요소를 찾을 수 있습니다. DOM 파서는 HTML을 트리 구조(DOM 개체)로 추상화하여 프로그램이 웹 문서의 요소 콘텐츠를 쉽게 검색하고 수정할 수 있도록 합니다.

DOM 파서를 사용하면 다음 코드를 사용하여 텍스트 영역 태그가 포함된 HTML 문서를 로드할 수 있습니다.

$html = file_get_contents('example.html');
$dom = new DOMDocument;
$dom->loadHTML($html);
로그인 후 복사

코드에서는 먼저 file_get_contents()를 사용하여 HTML 파일의 내용을 가져옵니다. 함수를 작성하여 DOM 파서에 전달합니다. 그런 다음 loadHTML() 메서드를 사용하여 HTML 파일을 DOM 객체로 변환합니다. file_get_contents() 函数获取 HTML 文件的内容,并将其传递给 DOM 解析器。然后,我们使用 loadHTML() 方法将 HTML 文件转换为 DOM 对象。

接下来,我们可以使用 DOM 对象上的 getElementsByTagName() 方法获取所有的 textarea 标签:

$textarea_list = $dom->getElementsByTagName('textarea');
로그인 후 복사
  1. 匹配 textarea 标签的内容

虽然 DOM 解析器可轻松获得 HTML 文件中的 textarea 标签,但它并不能提供一种简单方法获取标签的内容。因此,我们需要使用 PHP 正则表达式进一步匹配 textarea 标签的内容。

textarea 标签通常采用以下形式:

<textarea cols="50" rows="10">this is a text area</textarea>
로그인 후 복사

可以使用 PHP 正则表达式匹配所有 textarea 标签及其内容。 正则表达式中,可以使用 preg_match_all() 函数传递一个 HTML 字符串及相关参数。下面是匹配所有 textarea 标签的 JavaScript 正则表达式:

$pattern = '/<textarea[^>]*>(.*?)</textarea>/si';
preg_match_all($pattern, $html, $matches);
로그인 후 복사

在代码中,我们使用 / 来包装正则表达式,并在表达式后面添加 si 表示搜索标识符,并加上贪婪复选框(*?)来确保匹配所有的 textarea 标签。 如果正则表达式匹配成功,将会返回所有 textarea 标签及其内容以数组的形式返回。

最终,我们使用以下代码结合 DOM 解析器和正则表达式来获取页面中的所有 textarea 标签及其内容:

$html = file_get_contents('example.html');
$dom = new DOMDocument;
$dom->loadHTML($html);

$textarea_list = $dom->getElementsByTagName('textarea');

foreach($textarea_list as $textarea) {
    $content = $textarea->nodeValue; // 获取 textarea 的内容
    echo "textarea content: $content 
";
}
로그인 후 복사

在代码中,我们首先加载 HTML 文件,并使用 DOM 解析器获取其中的所有 textarea 标签。然后,我们使用 foreach 循环遍历每个标签,并使用 $textarea->nodeValue

다음으로 DOM 개체에서 getElementsByTagName() 메서드를 사용하여 모든 텍스트 영역 태그를 가져올 수 있습니다.
    rrreee
    1. 텍스트 영역 태그의 내용을 일치시키세요

    DOM 파서는 HTML 파일의 textarea 태그를 쉽게 얻을 수 있지만 태그의 내용을 얻는 쉬운 방법은 제공하지 않습니다. 따라서 PHP 정규식을 사용하여 textarea 태그의 내용을 추가로 일치시켜야 합니다.

    textarea 태그는 일반적으로 다음 형식을 취합니다.

    rrreee🎜 PHP 정규식을 사용하여 모든 textarea 태그와 해당 내용을 일치시킬 수 있습니다. 정규식에서는 preg_match_all() 함수를 사용하여 HTML 문자열 및 관련 매개변수를 전달할 수 있습니다. 다음은 모든 텍스트 영역 태그와 일치하는 JavaScript 정규 표현식입니다. 🎜rrreee🎜코드에서 /를 사용하여 정규 표현식을 래핑하고 표현식 뒤에 si를 추가하여 표시합니다. 식별자를 검색하고 욕심 많은 확인란(*?)을 추가하여 모든 텍스트 영역 태그가 일치하는지 확인하세요. 정규식이 성공적으로 일치하면 모든 textarea 태그와 해당 내용이 배열 형식으로 반환됩니다. 🎜🎜마지막으로 DOM 파서 및 정규식과 결합된 다음 코드를 사용하여 페이지와 해당 내용의 모든 텍스트 영역 태그를 가져옵니다. 🎜rrreee🎜코드에서 먼저 HTML 파일을 로드하고 DOM 파서를 사용하여 가져옵니다. textarea 태그에 있는 모든 textarea 태그입니다. 그런 다음 foreach를 사용하여 각 태그를 반복하고 $textarea->nodeValue를 사용하여 텍스트 영역의 내용을 가져옵니다. 🎜🎜🎜결론🎜🎜🎜PHP 정규 표현식과 DOM 파서를 사용하여 페이지의 모든 텍스트 영역 태그와 해당 내용을 쉽게 일치시킵니다. 실제 응용 프로그램에서는 이 기술을 사용하여 양식에서 사용자 입력을 자동으로 채우거나 추출할 수 있습니다. 🎜🎜정규식을 사용하여 HTML 문서를 구문 분석하면 특히 큰 문서로 작업할 때 불안정하고 오류가 발생할 수 있다는 점에 유의하세요. HTML 문서를 처리할 때 코드의 신뢰성과 정확성을 보장하기 위해 DOM 파서 또는 기타 보다 전문적인 도구를 사용하는 것이 좋습니다. 🎜

위 내용은 PHP 정규 표현식: HTML의 모든 텍스트 영역 태그를 일치시키는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

CakePHP 프로젝트 구성 CakePHP 프로젝트 구성 Sep 10, 2024 pm 05:25 PM

이번 장에서는 CakePHP의 환경 변수, 일반 구성, 데이터베이스 구성, 이메일 구성에 대해 알아봅니다.

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP 날짜 및 시간 CakePHP 날짜 및 시간 Sep 10, 2024 pm 05:27 PM

cakephp4에서 날짜와 시간을 다루기 위해 사용 가능한 FrozenTime 클래스를 활용하겠습니다.

CakePHP 파일 업로드 CakePHP 파일 업로드 Sep 10, 2024 pm 05:27 PM

파일 업로드 작업을 위해 양식 도우미를 사용할 것입니다. 다음은 파일 업로드의 예입니다.

CakePHP 라우팅 CakePHP 라우팅 Sep 10, 2024 pm 05:25 PM

이번 장에서는 라우팅과 관련된 다음과 같은 주제를 학습하겠습니다.

CakePHP 토론 CakePHP 토론 Sep 10, 2024 pm 05:28 PM

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

CakePHP 유효성 검사기 만들기 CakePHP 유효성 검사기 만들기 Sep 10, 2024 pm 05:26 PM

컨트롤러에 다음 두 줄을 추가하면 유효성 검사기를 만들 수 있습니다.

See all articles