Bagaimanakah php mengetahui persamaan dan perbezaan rentetan menggunakan algoritma 'semula jadi'.

醉折花枝作酒筹
Lepaskan: 2023-03-11 22:04:02
asal
1461 orang telah melayarinya

Dalam artikel sebelumnya, kami belajar cara mencari kedudukan terakhir rentetan dalam rentetan lain Jika anda memerlukannya, sila baca "Bagaimanakah PHP mengetahui kedudukan terakhir rentetan 》. Kali ini kami akan memperkenalkan kepada anda cara menggunakan algoritma "semula jadi" untuk mengetahui persamaan dan perbezaan rentetan Anda boleh merujuknya jika anda memerlukannya.

Dalam artikel sebelum ini, kami telah memperkenalkan kaedah membandingkan rentetan, tetapi kali ini kami berbeza Kami menggunakan algoritma "semula jadi" untuk membandingkan rentetan. Jika anda ingin mengetahui cara menggunakan algoritma biasa untuk membandingkan rentetan, anda boleh membaca artikel sebelumnya "Bagaimana untuk mengetahui persamaan dan perbezaan rentetan dengan fungsi PHP".

Mari kita lihat apa yang dipanggil algoritma pengisihan "semula jadi".

melaksanakan algoritma pengisihan dengan cara yang sama seperti orang biasanya mengisih rentetan alfanumerik dan mengekalkan perkaitan kunci/nilai asal, yang dipanggil "isihan semula jadi".

Baiklah, mari kita ke intinya sekarang.

Mula-mula mari kita lihat contoh kecil.

<?php
echo strnatcasecmp("2Hello WORLD!","10Hello WORLD!");
echo "<br>";
echo strnatcasecmp("2hello world!","2aello world!");
echo "<br>";
echo strnatcasecmp("2hello world!","9hello WORLD!");
echo "<br>";
echo strnatcasecmp("2hello world!","2HELLO WORLD!");
?>
Salin selepas log masuk

Hasilnya ialah -1, apabila nombor kita sama tetapi huruf di belakangnya ditukar, ia adalah 1, dan apabila nombor sama, hurufnya sama, dan bahagian atas dan huruf kecil berbeza, didapati 0. Apakah sebabnya?

Bagaimanakah php mengetahui persamaan dan perbezaan rentetan menggunakan algoritma semula jadi.Dengan soalan-soalan ini, mari kita lihat fungsi ini.


Fungsi strnatcasecmp() menggunakan algoritma "semula jadi" untuk membandingkan dua rentetan (tidak sensitif huruf besar-besaran).

Dalam kes ini, mari kita lihat sintaks fungsi ini.

Kami masih ingin tahu tentang "0", "-1", dan "1" sebelum ini. Adakah anda tahu maksudnya? Tidak mengapa, ini adalah nilai pulangan fungsi, digunakan untuk menggambarkan hubungan antara rentetan pertama dan rentetan kedua.


Fungsi kembali:
strnatcasecmp(要比较的第一个字符串,要比较的第二个字符串)
Salin selepas log masuk


0 - jika dua rentetan adalah sama

  • >0 - Jika string1 lebih besar daripada string2

  • Terdapat dua cara untuk membandingkan rentetan menggunakan "natural " Algoritma, Kali ini kami akan memperkenalkan yang tidak sensitif huruf besar-besaran. Artikel seterusnya akan memperkenalkan yang sensitif huruf besar-besaran.

  • Itu sahaja jika anda ingin mengetahui perkara lain, anda boleh klik di sini. → →
tutorial video php


Atas ialah kandungan terperinci Bagaimanakah php mengetahui persamaan dan perbezaan rentetan menggunakan algoritma 'semula jadi'.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan