帮小弟我把这函数精简下啊
帮我把这函数精简下啊,,
- PHP code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><?php $varchar='德国和丹麦都在第一场比赛1-0获胜,在次轮比赛中,德国2-1击败荷兰,两场小组赛战罢,德国队虽然拿到了6分,但依然未能保证出线,最后一场如果输给丹麦仍然有出局可能。丹麦上一场在0-2落后的情况下连追两球,但最后还是2-3输给葡萄牙,将小组次席拱手让给葡萄牙。 丹麦想要出线必须力争击败德国,好在他们也不缺乏击败德国的感觉。在两队最近3场交手中,丹麦令人吃惊地2胜1平占据上风,最近一次交手是在2010年8月,丹麦在落后两球情况下扳平比分。两队上一次在欧洲杯交手则是1992年欧洲杯决赛,当时正是丹麦童话的巅峰,北欧人2-0击败德国夺冠。 在德国队前两场比赛中,戈麦斯成为最大的亮点。超级马里奥连续两场比赛包揽了德国3粒进球,恐怖的是他进3球居然只花了6脚射门。戈麦斯目前以3球排名射手榜首位,自从1976年欧洲杯穆勒单届射进4球以来,德国队此后36年还没有任何球员欧洲杯单届进球超过3个。左边锋波多尔斯基在此前两场小组赛均打满全场,国家队出场次数达到99场,本场有望实现百场。 双方都没有对首发阵容进行大的调整,德国队只是因为博阿滕停赛而派上了本德,丹麦也只换上鲍尔森,队内元老罗梅达尔因伤缺席。本场德国前锋波多尔斯基迎来国家队第100场比赛,小将本德则是首次在国家队首发。 第2分钟,赫迪拉禁区前沿左侧传中,中路无人拿到皮球,后点穆勒胸部停球后左脚抽射稍稍高出。第5分钟,丹麦左侧角球,本特纳远点头球攻门被诺伊尔拿到。1分钟后,德国迅速反击,厄齐尔左侧直塞,波多尔斯基传中,克亚尔解围不力,穆勒门前3米处射门被安德森神奇化解。第12分钟,戈麦斯禁区外围左脚远射高出。'; $keyword="本德|鲍尔森"; //$keyword="射门|本德|鲍尔森"; //$keyword="丹麦|角球|头球|神奇"; function pipeidu($keyword,$varchar,$length){ $keyexp=explode('|',$keyword); $keyNum=count($keyexp); $ar = preg_split('/('.$keyword.')/', $varchar, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_OFFSET_CAPTURE); for($j=0; $j<count($ar)-1; $j++) { $t = $ar[$j][1]; $r[$t] = 0; for($i=$j; $i<count($ar); $i++) { if($ar[$i][0] == '本德'||$ar[$i][0] == '鲍尔森') { //[color=#FF0000]求此处适应一个或多个词组,越精简越好[/color]。 if($ar[$i][1]+strlen($ar[$i][0]) - $t < $length) $r[$t]++; else $r[$t=$ar[$i][1]] = 0; } } } if(isset($r)&&count($r)>0){ arsort($r); $r=array_keys($r); return $r=substr($varchar,$r[0],$length); } else{return $r=substr($varchar,0,$length);} } ?>
------解决方案--------------------
呵呵, 原来你就喜欢用这些半残废封装.
------解决方案--------------------
to qq120848369
lz 的代码不是如你所说 http://topic.csdn.net/u/20120619/02/c024bcf0-9c61-4e61-b58c-2844f0af2310.html
1,扫一遍找出所有的关键字。
2,再扫一遍,计算出每个end_index位置之前的关键字总数,同时计算180个字符之前的beg_index位置的关键字个数差值。
3,对关键字差值最大的180长度的段,strrstr,strstr分别头尾找到一个关键字,把多余的部分切掉,这样可以让字符再少一点。
的思路做的吗?
1、用 preg_split 完成找出所有的关键字
2、从每一个关键字出现的位置开始统计指定长度内关键字出现的次数(双重循环)
当然 lz 的代码也是用可优化的地方的,比如
外层循环中的
$t = $ar[$j][1];
$r[$t] = 0;
与内层循环中的
$r[$t=$ar[$i][1]] = 0;
存在重复计算的问题(因为外层的 $j 已经遍历了全部关键字节点)

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제











XREAL은 공간 컴퓨팅 신제품 출시 컨퍼런스에서 신제품 XREALBeamPro를 출시했으며 가격은 1,299위안부터입니다. 공식 소개에 따르면 XREALBeamPro는 2D 애플리케이션을 3D 공간으로 점진적으로 출시하는 컴퓨팅 터미널입니다. XREALAR 안경을 장착해 "완전한 소비자급 AR 공간 컴퓨팅 시스템"을 구성하고 휴대폰에서 사용자의 마이그레이션 비용을 최소화할 것입니다. 옆. XREALBeamPro는 디자인적으로 보면 스마트폰처럼 보이지만 휴대폰 제품이 아니고 터치 디스플레이를 탑재한 공간 컴퓨팅 단말기이다. 공식적으로는 '휴대폰 같은 AR 공간컴퓨팅 단말'로 자리매김하고 있다. 기자회견에서 XREAL 창립자이자 CEO인 Xu Chi는 BeamPro의 역량에 대한 열정을 표현했습니다.

AR(증강현실)과 VR(가상현실)의 발전으로 이 두 기술은 혁신과 경험의 중요한 부분이 되었습니다. 네트워크 프로그래밍 언어로 PHP가 인기를 끌면서 PHP는 AR/VR 애플리케이션 개발에 적합한 선택이 되었습니다. 이 기사에서는 PHP를 사용하여 AR/VR 애플리케이션을 구축하는 방법을 소개합니다. 1. AR 및 VR 기술 이해 AR/VR 애플리케이션 제작을 시작하기 전에 다양한 기술과 라이브러리를 이해해야 합니다. AR 기술을 사용하면 가상 개체나 정보가 실제 환경과 상호 작용할 수 있습니다. V

(2023년 9월 26일) 마이크로소프트는 마이크로LED가 소형, 경량, 고휘도, 높은 패키징 밀도라는 특징을 갖고 있어 특히 고해상도, 소형, 경량이 요구되는 머리 장착형 기기에 적합할 수 있다고 보고 있다. . 마이크로소프트는 "패널 디스플레이를 위한 광범위한 주광선 각도 조작을 제공하는 마이크로렌즈"라는 특허 출원에서 패널 디스플레이를 위한 광범위한 주광선 각도 조작을 제공하는 마이크로렌즈와 마이크로렌즈 어레이로 구성된 디스플레이 시스템을 소개했습니다. 여기서, 어레이의 각 마이크로렌즈는 패널 디스플레이의 각 픽셀에 해당합니다. 마이크로렌즈는 용도에 따라 구성됩니다.

지난 1월 9일부터 12일까지 가전제품 '봄 축제 갈라'인 CES에 4,000개 이상의 전시업체가 모였다. 소비자 AR 분야의 혁신 기업인 Mojie Technology는 처음으로 CES에 참가하여 핵심 장치, 완전한 기계 솔루션 및 맞춤형 서비스 분야에서 중국 AR 기업의 강력한 강점을 충분히 입증했습니다. 모지에(Mojie) 부스에서는 쌍안수지 회절도광가이드+MicroLED 기반의 AR 안경이 전시돼 많은 관람객들의 관심을 끌었고, 이를 직접 체험해 볼 수 있었다. 이 AR 안경에는 많은 실용적인 기능이 있습니다. 첫째, 착용자는 안경렌즈를 통해 실시간으로 텍스트 내용을 볼 수 있어 독서가 더욱 편리해진다. 둘째, 안경에는 음성 정보를 수집하고 즉석 번역 기능을 통해 지정된 언어의 텍스트로 변환할 수 있는 마이크가 내장되어 있습니다.

NTT QONOQ Devices는 사용자가 코드를 다툴 필요가 없는 스마트폰용 Mirza 무선 XR 안경을 공개했습니다. 이 안경은 포켓몬 고와 같은 실제 공간의 가상 AR 콘텐츠나 대형 가상 디스플레이에 휴대폰 콘텐츠를 표시할 수 있습니다.

혁신을 주도하는 기술 회사인 Christie는 지능형 시청각 기술 분야에서 포괄적인 솔루션, 풍부한 산업 경험 및 완전한 서비스 네트워크를 제공할 수 있습니다. 올해 InfoCommChina에서 Christie는 RGB 순수 레이저 프로젝터, 1DLP 레이저 프로젝터, LED 비디오 월, 콘텐츠 관리 및 처리 솔루션을 선보였습니다. 행사장에서는 천문 디스플레이용으로 특별히 설계된 대규모 맞춤형 외부 구형 돔이 현장의 초점이 되었으며 Christie M4K25RGB 순수 레이저 프로젝터는 여기에 "녹색 활력"을 부여했습니다. 중국 상업 사업부 수석 기술 서비스 관리자인 Sheng Xiaoqiang 씨는 다음과 같이 말했습니다. 외부 구형 돔 투영을 구현하는 것은 어렵지 않지만 더 작게 만들 수 있고 색상도

String의 분할 메서드는 String의 분할() 메서드를 사용하여 들어오는 문자나 문자열에 따라 문자열을 분할하고 분할 배열을 반환합니다. 1. 일반적인 사용법 @ 또는 같은 일반 문자를 구분 기호로 사용하는 경우: Stringaddress="Shanghai@Shanghai City@Minhang District@Wuzhong Road";String[]splitAddr=address.split("@");System .out. println(splitAddr[0]+splitAddr[1]+splitAddr[2]+splitAddr[3

이는 2023년 애플이 출시한 가장 혁신적인 제품일 수도 있고, 애플의 다음 시대의 시작일 수도 있다. 애플 비전 프로(Apple Vision Pro)가 현지 시간으로 2월 2일 정식 출시된다. 지난해 출시 당시 화제를 모았던 이 제품을 사용해본 소감은? 최근 외국 기술 편집자 Lance Ulanoff가 심층적인 경험 일기를 발표했는데, 이를 통해 바다 반대편에 있는 우리가 이 제품을 보다 직관적이고 진실하게 이해할 수 있게 되었습니다. CNMO는 Lance의 관련 일기도 편집했습니다. 다음으로 기사의 '나'는 랜스 자신을 가리킨다. 해당 글은 삭제되었으나 읽는 데에는 지장이 없습니다. 당신이 듣거나 읽은 것이 무엇이든
