12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- <?php
- /**
- * Created by PhpStorm.
- * User: Bear
- * Date: 2019/5/16
- * Time: 下午6:22
- */
- class RegexTest extends TestInit
- {
- public function testMatch()
- {
- $msg = 'http://sss.d/ssd/';
- $parse = parse_url($msg);
- var_dump(preg_match('/^sss/', $parse['host']));
- var_dump(parse_url($msg));
- }
- public function testReplace()
- {
- $msg = 'aaabbcccaadd';
- $match = ['aa','cc'];
- $replace = ['jj','hh'];
- var_dump($this->replaceOneByOne($msg, $match, $replace));
- }
- public static function replaceOneByOne($string, $fromList, $toList)
- {
- $offset = 0;
- foreach ($fromList as $index => $item) {
- $position = strpos($string, $item, $offset);
- if ($position !== false) {
- $left = substr($string, 0, $position);
- $right = substr($string, $position + strlen($item));
- $middle = $toList[$index];
- $string = $left . $middle . $right;
- $offset = strlen($left . $middle);
- }
- }
- return $string;
- }
- }
|