Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Menukar Ungkapan Biasa POSIX kepada PCRE dalam PHP?

Bagaimanakah Saya Menukar Ungkapan Biasa POSIX kepada PCRE dalam PHP?

DDD
DDDasal
2024-12-30 01:58:08497semak imbas

How Do I Convert POSIX Regular Expressions to PCRE in PHP?

Menukar POSIX RegExpExpressions kepada PCRE (preg) dalam PHP

Memandangkan POSIX RegExpressions (eg) telah ditamatkan penggunaannya dalam PHP sejak versi 5.3. 0, berhijrah ke Perl Compatible Regular Expressions (PCRE) adalah penting. Berikut ialah panduan untuk menukar ungkapan lama anda kepada pasangan serasi prag:

Pembatas:

Perubahan paling ketara ialah pengenalan pembatas, yang menyertakan ungkapan biasa. Ia boleh menjadi ~, /, #, atau kurungan: [], (), atau {}.

Watak Melarikan Diri:

Jika pembatas yang dipilih terdapat dalam ungkapan itu, elakkannya dengan garis miring ke belakang (). Gunakan preg_quote untuk melarikan diri dari semua pembatas dan aksara terpelihara.

Pengubah Kepekaan Kes:

PCRE memperkenalkan pengubah suai "i" untuk pemadanan tidak sensitif huruf besar-besaran, serupa dengan eregi.

Mudah Padanan:

Dalam kes seperti contoh anda (eg('^hello world')), strpos ringkas sudah memadai:

stripos($str, 'hello world') === 0

Contoh Menukar:

eregi('^hello world'); // POSIX expression

// PCRE conversion with delimiters and case-insensitive modifier
preg_match('/^hello world/i', $str);

Lagi Sumber:

  • Manual PHP - Sintaks PCRE: https://www.php.net/manual/en/reference.pcre.pattern.syntax.php
  • Perbezaan antara POSIX Regexp dan PCRE: https://www.php.net/manual/en/reference.pcre.pattern.posix.php

Atas ialah kandungan terperinci Bagaimanakah Saya Menukar Ungkapan Biasa POSIX kepada PCRE dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn