PHP、JS怎样查询字符串中子字符串所有出现位置

little bottle
Lepaskan: 2023-04-06 09:34:02
ke hadapan
3485 orang telah melayarinya

本篇文章主要讲述的是用PHP以及js查询字符串中子字符串所有出现位置,具有一定的参考价值,有需要的朋友可以参考一下。

JS中indexOf()方法可返回某个指定的字符串值在字符串中首次出现的位置。运用第二个参数,循环调用就能获取到子串出现的所有位置。

/**
   * 查询字符串中子字符串出现位置
   * @param str
   * @param substr
   * @return {Array}
   */
  function search_substr_pos(str, substr) {
    var _search_pos = str.indexOf(substr), _arr_positions = [];
    while (_search_pos > -1) {
      _arr_positions.push(_search_pos);
      _search_pos = str.indexOf(substr, _search_pos + 1);
    }
    return _arr_positions;
  }

  var str = "look at me,is there anything can prove that I am a good guy ?";
  var $_pos_substr = search_substr_pos(str, 'e');//子串位置
  var $_times_substr = $_pos_substr.length;//出现次数

  console.log($_pos_substr);    //  [ 9, 16, 18, 37 ]
  console.log($_times_substr);  //  4
Salin selepas log masuk

相关教程:JS视频教程

同理,PHP中使用strpos()方法

/**
 * 查询字符串中子字符串出现位置
 * @param $str
 * @param $substr
 * @return array
 */
function search_substr_pos($str, $substr)
{
  $_search_pos = strpos($str, $substr);
  $_arr_positions = array();
  while ($_search_pos > -1) {
    $_arr_positions[] = $_search_pos;
    $_search_pos = strpos($str, $substr, $_search_pos + 1);
  }
  return $_arr_positions;
}

$str = "look at me,is there anything can prove that I am a good guy ?";
$_pos_substr = search_substr_pos($str, 'e');//子串位置
$_times_substr = count($_pos_substr);//出现次数

print_r($_pos_substr);    //  Array ( [0] => 9 [1] => 16 [2] => 18 [3] => 37 )
print_r($_times_substr);  //  4
Salin selepas log masuk

相关教程:PHP视频教程

Atas ialah kandungan terperinci PHP、JS怎样查询字符串中子字符串所有出现位置. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:cnblogs.com
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan