php代码高亮正则,php通过正则表达式实现语法高亮
本篇文章主要介绍php通过正则表达式实现语法高亮,感兴趣的朋友参考下,希望对大家有所帮助。
本文实例讲述了php实现简单的语法高亮函数。具体分析如下:
这是一个php实现的简单语法高亮显示的函数,注意:这个函数设计的比较简单,可能对某些语法不能高亮显示,你可以自己扩充该函数的功能function syntax_highlight($code){
// this matches --> "foobar"
$code = preg_replace(
'/"(.*?)"/U',
'"$1"', $code
);
// hightlight functions and other structures like --> function foobar()
$code = preg_replace(
'/(\s)\b(.*?)((\b|\s)\()/U',
'$1$2$3',
$code
);
// Match comments (like /* */):
$code = preg_replace(
'/(\/\/)(.+)\s/',
'$0',
$code
);
$code = preg_replace(
'/(\/\*.*?\*\/)/s',
'$0',
$code
);
// hightlight braces:
$code = preg_replace('/(\(|\[|\{|\}|\]|\)|\->)/', '$1', $code);
// hightlight variables $foobar
$code = preg_replace(
'/(\$[a-zA-Z0-9_]+)/', '$1', $code
);
/* The \b in the pattern indicates a word boundary, so only the distinct
** word "web" is matched, and not a word partial like "webbing" or "cobweb"
*/
// special words and functions
$code = preg_replace(
'/\b(print|echo|new|function)\b/',
'$1', $code
);
return $code;
}
/*example-start*/
/*
** Create some example PHP code:
*/
$example_php_code = '
// some code comment:
$example = "foobar";
print $_SERVER["REMOTE_ADDR"];
$array = array(1, 2, 3, 4, 5);
function example_function($str) {
// reverse string
echo strrev($obj);
}
print example_function("foo");
/*
** A multiple line comment
*/
print "Something: " . $example;';
// output the formatted code:
print '
';
print syntax_highlight($example_php_code);
print '
';
/*example-end*/
总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。
相关推荐:
php代码高亮正则,php通过正则表达式实现语法高亮相关推荐
- php 正则 规则,PHP 正则表达式的语法规则
正则表达式描述了一种字符串匹配模式,通过这个模式在特定的函数中对字符串进行匹配.查找.替换及分割等操作.正则表达式作为一个匹配的模板,是由于原子(普通字符.例如 a-z )有特殊功能的字符(称之为元字 ...
- pspad c语言语法高亮,PSPad 下载地址以及设置语法高亮的方法 方便看代码
程序主页:www.pspad.com 特色:语法高亮,自动完成,自定义语法定义文件 使用时,按crtl+J可以自动完成.在输入的命令后按鼠标中键可以显示该命令的解释.在空白处按鼠标中键可 以显示ans ...
- wps的高亮怎么用_怎样在WPS上实现代码语法高亮
本文列举两种可行的方法,在WPS上实现代码语法高亮.其中,第二种方法也可以用到其他编辑软件,譬如Word之类.本文重点讨论第二种方法. 方法1 在WPS官网下载语法高亮插件. 图1 WPS语法高亮插件 ...
- wxpython bind自定义_wxpython 支持python语法高亮的自定义文本框控件的代码
在研发闲暇时间,把开发过程中比较重要的一些代码做个珍藏,下面的代码内容是关于wxpython 支持python语法高亮的自定义文本框控件的代码,应该是对大家也有用. import keyword im ...
- C# 代码编辑器实现篇-语法高亮
创建 C# 编辑器 实现效果 实现步骤 本片介绍基于 AvalonEdit 实现一个支持语法高亮的 C# 编辑器 实现效果 语法高亮 点击编译 实现步骤 在VS中创建窗体应用程序.通过 Nuget 引 ...
- vscode写php高亮,写了一个Hy的vscode语法高亮插件
-------2018 8 3----------- 把函数名和参数改了,正则有点古怪,参考自带的lambda表达式才搞定 但彩色括号走了弯路,各种配图有彩色括号的插件其实很少是自己搞的,其实只要再装 ...
- linux如何使用vim显示行号语法高亮,(.vimrc简单使用)
每次用vim,都要上网查如何使用插件.vimrc,索性就写成博客,省的以后再查了. vimrc就是vim配置文件,正常使用的vim配置很少,最重要的是不显示行号,没有语法高亮. 下面是我平时使用的配置 ...
- ABAP开发环境语法高亮的那些事儿
关于SAP ABAP开发环境,Jerry之前写过几篇公众号文章: 那些年我用过的SAP IDE 不喜欢SAP GUI?那试试用Eclipse进行ABAP开发吧 使用Visual Studio Code ...
- typescript语法高亮插件_vscode常用插件
插件介绍 HTML Snippets > 初级H5代码片段及提示 HTML CSS Support > 初级H5代码片段及提示 Debugger for Chrome > 让 vsc ...
- ueditor 编辑器增加css样式_ueditor编辑器实现语法高亮
ueditor编辑器实现语法高亮 本站前期采用的是dreamlu开源博客搭建,网站后台编辑器采用的是百度ueditor富文本编辑器.在我的迭代改进时,在编辑器上还采用了这一编辑器,不过一直以来发现后台 ...
最新文章
- 实战:一次失败的WEB攻击试验,欢迎高手补充
- Nature综述: 蓝藻水华的形成机理及防治动态
- centos memcached php,centos系统为php安装memcached扩展步骤
- Python标准模块—Regular Expressions
- Oracle CBO 与 RBO
- 手把手视频:万能开源Hawk抓取动态网站
- 思科虚拟化与视频技术打造协作新体验
- Day10 Python基础之特殊函数(八)
- git pull 卡在 Unpacking objects 解决方法
- java and dsl_Groovy语法糖以及DSL
- 爬空气质量MySQL_爬虫:利用selenium采集某某环境网站的空气质量数据
- 用树莓派控制WS2812圣诞树灯饰
- PHP上传文件大小和时间限制
- linux下哪个分区工具好,这些Linux分区工具是免费的且好用
- 怎么查oa系统的服务器地址,oa系统服务器地址如何查
- wps如何只让他显示3级标题_WPS如何三级标题
- 字节跳动基于ClickHouse优化实践之“高可用”
- 10105 - Polynomial Coefficients
- 生于80年代,穷于10年代,败于90后
- 小程序源码:游戏助手王者战力查询扫码登录多功能微信小程序