语法高亮的手机手机铃声编辑软件件

比特客户端
您的位置:
详解大数据
详解大数据
详解大数据
详解大数据
15 款代码语法高亮工具 美化你的代码
关键字:Java
  语法高亮是文本编辑器用来显示文本的,特别是源代码,根据不同的类别来用不同的颜色和字体显示。这个功能有助于编写结构化的语言,比如编程语言,标记语言,这些语言的语法错误显示是有区别的。语法高亮并不会影响文本自身的意义,而且能很好的符合人们的阅读习惯。
  语法高亮同时也能帮助开发者很快的找到他们程序中的错误。例如,大部分编辑器会用不同的颜色突出字符串常量。所以,非常容易发现是否遗漏了分隔符,因为相对于其他文本颜色不同。
  现在有各种各样的语法高亮工具,可以格式化语言,并且根据不同的编程语言进行高亮显示。无论是个 HTML 页面还是 PHP,Ruby,Python 或者是 ASP。这篇文章中,我们会介绍 15 款最好的代码语法高亮工具,帮助大家用更迷人的方式展示代码。Enjoy!
  Prism 是一个轻量级,可扩展的语法着色工具,符合 Web 标准。它压缩后只有 1.5KB,并且非常易于使用,只需要插入一个 和 JS 文件即可。
  GeSHi(Generic Syntax Highlighter)用于在HTML页面中高亮显示各种源代码。支持超过60种语言:PHP、HTML、C、Java、Java5、C#、 Actionscript、Delphi、C++、Groovy、Javascript、Perl、PL/SQL、Ruby、Python、SQL、 XML等,并易于集成到Dokuwiki,Mambo,phpBB,WordPress 和 WikkaWiki 等系统中使用。
  Rainbow
  Rainbow 是一个对代码进行语法着色的轻量级 JavaScript 库,只有 1.4kb 大小。易用、可扩展、完全通过 CSS 进行样式显示。完全支持 CSS 主题定制颜色和字体。
  Highlight.js
  Highlight.js 是一个用于在任何web页面上着色显示各种示例源代码语法的JS项目。支持 26 种代码格式化风格,54 种语言: C 1C, AVR Assembler, Apache, Axapta, Bash, C#, C++, CSS, DOS .bat, Delphi, Django, HTML, XML, Ini, Java, Javascript, Lisp, MEL (Maya Embedded Language), PHP, Perl, Python, Python profile, RenderMan (RIB, RSL), Ruby, SQL, Smalltalk, VBScript, 其他更多。
  Quick Highlighter
  这是款在线代码高亮工具,提供多种编程语言的高亮,用户可以通过几个选项来进行不同类别的代码高亮。
   Code Prettify
  这 是款 JavaScript和 CSS 文件,允许在一个 HTML 文件中进行源代码的语法高亮。它支持代码中的嵌入式链接,行号等等。它的应用非常广泛,支持跨。得到 code.google.com 和 stackoverflow.com 的一致认可。
  Snippet
  Snippet 是个 jQuery 语法高亮插件,在 SHJS 脚本中构建。Snippet 提供一个快速简单的方式来进行 HTML 文档的代码高亮。它原生支持 15 中流行语言,支持 39 种独特的语法高亮风格模式。
  CodePress
  CodePress 是个基于 web 的源代码编辑器,当在浏览器中编写 JavaScriptis 代码的时候能实时的进行代码高亮。
  语法高亮是文本编辑器用来显示文本的,特别是源代码,根据不同的类别来用不同的颜色和字体显示。这个功能有助于编写结构化的语言,比如编程语言,标记语言,这些语言的语法错误显示是有区别的。语法高亮并不会影响文本自身的意义,而且能很好的符合人们的阅读习惯。
  语法高亮同时也能帮助开发者很快的找到他们程序中的错误。例如,大部分编辑器会用不同的颜色突出字符串常量。所以,非常容易发现是否遗漏了分隔符,因为相对于其他文本颜色不同。
  现在有各种各样的语法高亮工具,可以格式化语言,并且根据不同的编程语言进行高亮显示。无论是个 HTML 页面还是 PHP,Ruby,Python 或者是 ASP。这篇文章中,我们会介绍 15 款最好的代码语法高亮工具,帮助大家用更迷人的方式展示代码片段。Enjoy!
  Prism 是一个轻量级,可扩展的语法着色工具,符合 Web 标准。它压缩后只有 1.5KB,并且非常易于使用,只需要插入一个 CSS 和 JS 文件即可。
  GeSHi(Generic Syntax Highlighter)用于在HTML页面中高亮显示各种源代码。支持超过60种语言:PHP、HTML、C、Java、Java5、C#、 Actionscript、Delphi、C++、Groovy、Javascript、Perl、PL/SQL、Ruby、Python、SQL、 XML等,并易于集成到Dokuwiki,Mambo,phpBB,WordPress 和 WikkaWiki 等系统中使用。
  Rainbow
  Rainbow 是一个对代码进行语法着色的轻量级 JavaScript 库,只有 1.4kb 大小。易用、可扩展、完全通过 CSS 进行样式显示。完全支持 CSS 主题定制颜色和字体。
  Highlight.js
  Highlight.js 是一个用于在任何web页面上着色显示各种示例源代码语法的JS项目。支持 26 种代码格式化风格,54 种语言: C 1C, AVR Assembler, Apache, Axapta, Bash, C#, C++, CSS, DOS .bat, Delphi, Django, HTML, XML, Ini, Java, Javascript, Lisp, MEL (Maya Embedded Language), PHP, Perl, Python, Python profile, RenderMan (RIB, RSL), Ruby, SQL, Smalltalk, VBScript, 其他更多。
  Quick Highlighter
  这是款在线代码高亮工具,提供多种编程语言的高亮,用户可以通过几个选项来进行不同类别的代码高亮。
  Google Code Prettify
  这 是款 JavaScript 模块和 CSS 文件,允许在一个 HTML 文件中进行源代码的语法高亮。它支持代码中的嵌入式链接,行号等等。它的应用非常广泛,支持跨浏览器。得到 code.google.com 和 stackoverflow.com 的一致认可。
  Snippet
  Snippet 是个 jQuery 语法高亮插件,在 SHJS 脚本中构建。Snippet 提供一个快速简单的方式来进行 HTML 文档的代码高亮。它原生支持 15 中流行语言,支持 39 种独特的语法高亮风格模式。
  CodePress
  CodePress 是个基于 web 的源代码编辑器,当在浏览器中编写 JavaScriptis 代码的时候能实时的进行代码高亮。
  JavaScript Syntax Highlighter
  JavaScript Syntax Highlighter 是个客户端代码高亮工具,支持的语言有:HTML, CSS, JavaScript, PHP, SQL, HTTP 和SMTP 协议, php.ini 和 Apache 配置,支持所有主流的浏览器: Internet Explorer, Firefox, and Google Chrome。JUSH 同时也是个 jQuery 和 WordPress 插件。
  Chili 是个 jQuery 代码高亮插件,可以快速的进行代码高亮,设置非常简单,完全自定义,而且有着完整的文档。
  此 插件支持的语言有: C++, C#, CSS, Delphi, Java, JavaScript, LotusScript,, PHP, XHTM;支持的浏览器有: Internet Explorer, Firefox, Opera 和 Safari。
  Pygments
  Pygments 是个通用代码语法高亮工具,许多常用的软件都使用了这款工具,比如论坛系统,wikis 或者其他需要美化代码的应用。 Pygments 支持范围非常广泛的编程语言,和大量的输出格式,包括 HTML, RTF, LaTeX 和 ANSI 序列。
  Ultraviolet
  Ultraviolet 是个基于 Textpow 的代码语法高亮引擎。自从使用了 Textmate 语法高亮文件,就能支持超过 50 中语言的语法高亮显示和 20 种不同的主题,而且是开箱即用哦。
  Lighter
  Lighter 是一款免费的MooTools代码高亮插件。使用lighter.js简单到只需要在你的页面中添加一段简单的脚本就OK了。
  beautyOfCode
  这是个 jQuery 语法高亮插件,使用 Alex Gorbatchev 的 SyntaxHighlighter,但是这个插件兼容 xhtml 语法。
  SyntaxHighlighter
  SyntaxHighlighter 是个功能齐全的独立代码语法高亮工具,使用 JavaScript 编写。目前已经得到了 Apache, Aptana,, Yahoo, Wordpress, Bug Labs, Freshbooks 的一致认可,并且都在使用。
  SyntaxHighlighter 允许在 web 页面插入彩色代码片段,不需要依赖任何端脚本。
[ 责任编辑:jj ]
去年,手机江湖里的竞争格局还是…
甲骨文的云战略已经完成第一阶段…
软件信息化周刊
比特软件信息化周刊提供以数据库、操作系统和管理软件为重点的全面软件信息化产业热点、应用方案推荐、实用技巧分享等。以最新的软件资讯,最新的软件技巧,最新的软件与服务业内动态来为IT用户找到软捷径。
商务办公周刊
比特商务周刊是一个及行业资讯、深度分析、企业导购等为一体的综合性周刊。其中,与中国计量科学研究院合力打造的比特实验室可以为商业用户提供最权威的采购指南。是企业用户不可缺少的智选周刊!
比特网络周刊向企业网管员以及网络技术和产品使用者提供关于网络产业动态、技术热点、组网、建网、网络管理、网络运维等最新技术和实用技巧,帮助网管答疑解惑,成为网管好帮手。
服务器周刊
比特服务器周刊作为比特网的重点频道之一,主要关注x86服务器,RISC架构服务器以及高性能计算机行业的产品及发展动态。通过最独到的编辑观点和业界动态分析,让您第一时间了解服务器行业的趋势。
比特存储周刊长期以来,为读者提供企业存储领域高质量的原创内容,及时、全面的资讯、技术、方案以及案例文章,力求成为业界领先的存储媒体。比特存储周刊始终致力于用户的企业信息化建设、存储业务、数据保护与容灾构建以及数据管理部署等方面服务。
比特安全周刊通过专业的信息安全内容建设,为企业级用户打造最具商业价值的信息沟通平台,并为安全厂商提供多层面、多维度的媒体宣传手段。与其他同类网站信息安全内容相比,比特安全周刊运作模式更加独立,对信息安全界的动态新闻更新更快。
新闻中心热点推荐
新闻中心以独特视角精选一周内最具影响力的行业重大事件或圈内精彩故事,为企业级用户打造重点突出,可读性强,商业价值高的信息共享平台;同时为互联网、IT业界及通信厂商提供一条精准快捷,渗透力强,覆盖面广的媒体传播途径。
云计算周刊
比特云计算周刊关注云计算产业热点技术应用与趋势发展,全方位报道云计算领域最新动态。为用户与企业架设起沟通交流平台。包括IaaS、PaaS、SaaS各种不同的服务类型以及相关的安全与管理内容介绍。
CIO俱乐部周刊
比特CIO俱乐部周刊以大量高端CIO沙龙或专题研讨会以及对明星CIO的深入采访为依托,汇聚中国500强CIO的集体智慧。旨为中国杰出的CIO提供一个良好的互融互通 、促进交流的平台,并持续提供丰富的资讯和服务,探讨信息化建设,推动中国信息化发展引领CIO未来职业发展。
IT专家新闻邮件长期以来,以定向、分众、整合的商业模式,为企业IT专业人士以及IT系统采购决策者提供高质量的原创内容,包括IT新闻、评论、专家答疑、技巧和白皮书。此外,IT专家网还为读者提供包括咨询、社区、论坛、线下会议、读者沙龙等多种服务。
X周刊是一份IT人的技术娱乐周刊,给用户实时传递I最新T资讯、IT段子、技术技巧、畅销书籍,同时用户还能参与我们推荐的互动游戏,给广大的IT技术人士忙碌工作之余带来轻松休闲一刻。
微信扫一扫
关注Chinabyte安卓开发中最受欢迎的9款Android代码编辑器
&&&&&随着各种移动智能设备的发展,越来越多被的开发者喜欢在移动设备上查看甚至编辑代码。Android平台上各种基于代码的编辑器也层出不穷,那对于移动开发人员而言,如何才能选择一款有用且适合自己的代码编辑器呢?今天小编为大家分享在网上看到的一篇有关移动开发者最喜欢的9款Android代码编辑器,一起来看看吧,说不定就有你喜欢的一款哦。&1、Code Peeker&Code Peeker这款Android代码编辑器,可以让语法高亮显示并允许你查找代码片段,且被Google Play选中作为教育项目的一部分。Code Peeker可以打开和高亮任何支持的代码语言,如C/C++ 、C#、CSS、Java、JavaScript、PHP等。它还可以标记重要代码的位置、内置一个文件浏览器、支持内外部SD卡,同时也支持其他文件浏览器,如Dropbox等。&2、Terminal IDE&Terminal IDE是一个高度可扩展的终端应用程序。它具有完整的Java/C/C++/HTML/工具包,并且可以在任何Android设备上运行。同时它还在编辑器中设置了C/java/HTML作为开发人员开发的主要选择项。&3、Syntax Highlighted Code Editor&Syntax Highlighted Code Editor代码编辑器支持HTML、CSS、JavaScript、PHP、Python、Java、C、C++、CoffeeScript、Haskell、Clojure和Groovy。虽然它主要定位的是Web开发,但是Java编码员也可以使用它。Syntax Highlighted本身携有很多功能,如查找/替换、撤销和重做功能。&4、DeuterIDE——编译器和IDE&DeuterIDE是一款基于移动开发的文本编辑器,其内置支持安卓集成开发环境。它的虚拟按键可提供常用的编程符号和语法高亮功能,并支持超过40种编程语言。&5、DroidEdit&DroidEdit是一款支持Android平板和手机的文本和源代码编辑器(类似Notepad++和gedit),支持C、C++、C#、Java、HTML、CSS、JavaScript、Python等编程语言的语法高亮。&6、Java Code Viewer&Java Code Viewer是一款文本查看器、Java查看器、C#查看器以及其他支持Android编程语言的查看器,同时还支持Java、C#、C / C ++、CSS、PHP、ASP和JavaScript的语法高亮显示。&7、AIDE——Android IDE&AIDE是一款支持直接在Android设备上开发真正的集成开发环境(IDE),通过一步步流程让你成为app开发专家。它的功能有:可视化的设计应用、多功能实现代码的代码编辑器、实时错误检查、重构和智能代码导航等。&8、JavaIDEdroid&JavaIDEdroid是一个IDE(集成开发环境),它可以运行于Android上并允许你直接在本地创建Android应用,而不需要通过Mac、Windows或Linux上的Android SDK。JavaIDEdroid配有aapt工具、Java编译器、dx工具、DexMerger工具等。&9、Quoda Code Editor&Quoda是一款复杂但易于使用的源代码编辑器,同时配备了一些强大功能的IDE——主题语法高亮、跨会话编辑、代码完成、制表位和变量的片段等。&以上就是现目前,Android平台上最受欢迎的9款代码编辑器,如果你还没开始使用移动端的代码编辑器或还没找到一款合适的编辑器,不妨可以试试上面介绍的这些。&&相关文章:《》文章来源:推酷&
后参与讨论
没有更多评论了
Copyright (C)
麦子学院 All Right Reserved. 蜀ICP备号-4
服务热线:400-862-8862
还没有账号?
其他方式登录
滑动完成验证
重发验证码
手机短信验证码已发送,请查收!
老板不在,1月折扣疯狂放送!
客服热线 400-862-8862Notepad++ V7.3.3 文本编辑器 支持27种语法高亮显示编辑 - 偶要下载站
偶要下载站 / 绿色软件下载联盟站!为大家提供一手绿色软件下载服务!
当前位置: &
> Notepad++ V7.3.3 文本编辑器 支持27种语法高亮显示编辑
Notepad++ V7.3.3 文本编辑器 支持27种语法高亮显示编辑
Notepad++ 是一款非常有特色的文本编辑器软件,是开源软件,可以免费使用。
提示:notepad++支持多国语言,改变语言只需要在&settings&-&preferences&-&general&界面中把english改成简体中文即可!
Notepad++支持的语言:
C, C++ , Java , C#, XML, HTML, PHP, Javascript , RC resource file, makefile, ASCII art file (extension .nfo) , doxygen, ini file, batch file, ASP , VB/VBS source files , SQL , Objective-C , CSS, Pascal, Perl, Python, Lua, TCL, Assembler, Ruby, Lisp, Scheme, Properties, Diff, Smalltalk, Postscript 及 VHDL.
&Notepad++ 主要功能有:
1、内置支持多达27种语法高亮度显示(包括各种常见的源代码、脚本,能够很好地支持 .nfo 文件查看),还支持自定义语言。
2、可自动检测文件类型,根据关键字显示节点,节点可自由折叠/打开,还可显示缩进引导线,代码显示得很有层次感。
3、可打开双窗口,在分窗口中又可打开多个子窗口,允许快捷切换全屏显示模式(F11),支持鼠标滚轮改变文档显示比例。
4、提供了一些有用工具,如邻行互换位置、宏功能等。
5、可显示选中文本的字节数(而不是一般编辑器所显示的字数,这在某些情况下,比如软件本地化很方便)。
Notepad++是程序员们必备的文本编辑器,软件小巧高效,支持27种编程语言,通吃C,C++ ,Java ,C#, XML, HTML, PHP,JS 等。
Notepad++提供了一个简洁高效的完全可由用户定制的界面。对中文支持的很好,并有完整的中文化接口及支援多国语言撰写的功能(UTF8 技术)。Notepad++内置支持多达27种语法高亮度显示(包括各种常见的源代码、脚本,能够很好地支持 .nfo 文件查看),还支持自定义语言。
版本说明:
Notepad1.rar特点:v6.9.0
-删除中文和英文外的语言文件
-删除升级程序
+完善官方没有汉化到位的中文文件,用起来更爽
+修正官方的翻译错误(比如不使用云存储翻译成万里无云)
+自带注册文件,自动设置右键菜单为中文
*右键菜单自动识别32位和64位系统
界面预览图:
编辑文本工具对于经常在办公室工作的朋友还是非常实用的,因为对于网络编辑工作的人来说一款专业强大的文本编辑器是必不可少的。自带的记事本功能比较简陋只能完成一些最基础的文本编辑,对于一些...
整理时间:
整理时间:
整理时间:
整理时间:
整理时间:
整理时间:
整理时间:
整理时间:
整理时间:
文本编辑器是一类用作编写普通文字的应用软件,可以编写和查看文本文件。网上的文本编辑器很多,对于不清楚文本编辑器哪个好的用户,小编专为大家整理了选自文本编辑器排行榜的多功能的文本编辑器...
整理时间:
整理时间:
整理时间:
整理时间:
整理时间:
整理时间:
整理时间:
整理时间:
整理时间:
Notepad++ V7.3.3 文本编辑器 支持27种语法高亮显示编辑
想下载到手机上? 鼠标移动到左边二维码上扫一扫即可!
1. 如果发现下载地址不能下载,请多试几个下载地址!如安装时出现问题,请评论中留言!可以QQ联系告知我详细信息!
2. 为了保证您享受到最快的下载速度,推荐安装迅雷下载工具。如果下载后出现不能解压,请安装winrar等解压缩包软件!
3. 如果下载的压缩包文件需要解压密码,网址就是解压密码:www.ouyaoxiazai.com
4. 本站不提供该下载软件的破解版,注册机,注册码,序列号,注册密钥,激活码,等相关信息下载以及咨询!
绿色版/简体中文/★★☆☆☆
绿色版/简体中文/★★☆☆☆
绿色版/简体中文/★★☆☆☆
免费版/简体中文/★★☆☆☆
绿色版/简体中文/★★☆☆☆
免费版/简体中文/★★☆☆☆
下载排行榜
人气下载榜
偶要下载站集绿色软件下载、手机软件与游戏、各种素材、字体下载于一身的联盟网站,致力打造一个纯绿色软件下载乐园。
本站为非营利性网站,中国绿色联盟提供的资源均来自网络收集整理,下载个人纯属学习交流之用,如有侵犯您的版权请与我联系,我们会马上改正请在下载24小时内删除!
Copyright (C)
偶要下载(OuyaoXiazai.Com) All Rights Reserved. 鲁ICP备号 鲁公网安备74号推荐10个开发者最常用的代码编辑器_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
推荐10个开发者最常用的代码编辑器
阅读已结束,下载本文需要
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩1页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢&nbsp>&nbsp
&nbsp>&nbsp
ios教程 &nbsp>&nbsp
手把手带你实现Markdown编辑器语法高亮
摘要:源代码:ZYMarkdownEditor什么是正则表达式?iOS开发如何使用正则表达式?使用正则表达式匹配Markdown性能劣势?配合YYTextView实现语法高亮本文是作者在独立开发一款Markdown编辑器App时所写,读完本文你将可以实现如下效果:IMG_3528.PNG什么是正则表达式?正则表达式(regularexpression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。如果有同学
源代码:ZYMarkdownEditor
什么是正则表达式?
iOS开发如何使用正则表达式?
使用正则表达式匹配Markdown
配合YYTextView实现语法高亮
本文是作者在独立开发一款Markdown编辑器App时所写,读完本文你将可以实现如下效果:
IMG_3528.PNG
什么是正则表达式?
正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。
如果有同学写过爬虫,应该对正则表达式很熟悉,强大的匹配功能让很多问题引刃而解.运用正则表达式可以验证用户输入(手机号,邮箱,密码)提取特定规则字符串.
举个最简单的栗子:
& [//u4e00-//u9fa5]&
//匹配中文& ^[A-Za-z0-9]+$&
//匹配由数字和26个英文字母组成的字符串
附上简单的正则语法:NSRegularExpression-Cheatsheet.pdf推荐一本好书:
精通正则表达式
作者也仅是看过一部分,书前半部分讲原理,一共500多页,略多。附上豆瓣链接:精通正则表达式
正则匹配如何实现的呢?
通过正则引擎来实现,正则文法对应于有限状态自动机,又分确定型有限状态自动机(DFA)和非确定型有限状态自动机(NFA),这两种状态机的能力是一样的,都能识别正则语言。什么是DFA与NFA呢?这方面属于编译原理的知识,作者由于还没有上过这门课,所以这方面就不误人子弟了。
感兴趣的同学可以看看下面这本书:Parsing Techniques。这本书主要讲前端,大家熟知的可能是龙书,但是龙书不太适合新手,所以就不推荐了。后端方面还有各种鲸书,虎书。
iOS开发如何使用正则匹配
iOS开发中,使用正则匹配的场景不是很多:
注册检查帐号是是手机号,避免多次请求服务器
密码强度检查
验证码检查
举个栗子:检查输入的是否手机号
//匹配以1开头,第二位为36578,后面还有九位数字的字符串;NSString *pattern = @&^[1][36578]////d{9}$&//生成正则表达式NSRegularExpression *regular = [NSRegularExpression regularExpressionWithPattern:pattern options:0 error:nil];//匹配方法/* (void)enumerateMatchesInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)range usingBlock:(void (NS_NOESCAPE ^)(NSTextCheckingResult * _Nullable result, NSMatchingFlags flags, BOOL *stop))- (NSArray&NSTextCheckingResult *& *)matchesInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)- (NSUInteger)numberOfMatchesInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)- (nullable NSTextCheckingResult *)firstMatchInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)- (NSRange)rangeOfFirstMatchInString:(NSString *)string options:(NSMatchingOptions)options range:(NSRange)*/NSArray *array =
[regular matchesInString:string options:0 range:NSMakeRange(0,string.length)];//判断数组元素个数是否为0if (array.count == 0) {
self.loginButton.enabled = NO;}else{ self.loginButton.enabled = YES;}
上面仅仅是正则表达式的一个简单应用。还可以使用正则表达式来进行实时文本搜索高亮,语法高亮,提取特定字符串。作者目前正在独立开发一个简单的Markdown编辑App,通过用正则表达式完成了语法高亮。
使用正则表达式匹配Markdown语法
作者在匹配Markdown语法时由于水平限制只匹配了一部分,另外一部分:公式,checkBox没有匹配。如果哪位朋友能够完成希望指点一下。我们匹配时使用的正则表达式如下:
//# 五级标题@&^((//#{1,5}+//s+[^#].*))$&//标题/n----@&^[^-//n][^//n]*//n-+$&//标题/n==@&^[^=//n][^//n]*//n=+$&//`行内代码`@&(?&!`)(`{1,3})([^`/n]+?)//1(?!`)&//多行代码 @ &``/`([//s//S]*?)``/`[//s]?&//缩进型代码
@&(^//s*$//n)((( {4}|//t).*(//n|//z))|(^//s*$//n))+&//*强调*
__强调__@&((?&!//*)//*(?=[^ //t*])(.+?)(?&=[^ //t*])//*(?!//*)|(?&!_)_(?=[^ //t_])(.+?)(?&=[^ //t_])_(?!_))&// ***强调***
__强调__ @&((?&!//*)//*{3}(?=[^ //t*])(.+?)(?&=[^ //t*])//*{3}(?!//*)|(?&!_)_{3}(?=[^ //t_])(.+?)(?&=[^ //t_])_{3}(?!_))&//**text**
@&(?&!//*)//*{2}(?=[^ //t*])(.+?)(?&=[^ //t*])//*{2}(?!//*)&// __强调__
@&(?&!_)__(?=[^ //t_])(.+?)(?&=[^ //t_])//__(?!_)&// ~~删除~~@&(?&!~)~~(?=[^ //t~])(.+?)(?&=[^ //t~])//~~(?!~)&//![图片](域名)@&!?//[([^//[//]]+)//](//(([^//(//)]+)//)|//[([^//[//]]+)//])&//[链接]:@&^[ //t]*//[[^//[//]]//]:&//1.列表 2.列表 3.列表@&^[ //t]*([*+-]|//d+[.])[ //t]+&//******分割线@&^[ //t]*([*-])[ //t]*((//1)[ //t]*){2,}[ //t]*$&
说一种最简单但效率最低的方法
使用TextView代理方法,每次文本更改都进行匹配
使用TextKit进行富文本的生成,需要用到匹配结果得到的
range,TextKit教程请自行搜索;
或者使用更方便的YYTextV
这种每次更改都要匹配的显然很低效,但在这个基础上,我们仍然可以进行一些优化:
匹配空字符串,如果输入的是空字符串,不再继续匹配其他语法
如果用户粘贴文段时,不匹配。
如果使用编译原理知识来进行语法高亮就可以提高很多性能。但作者学识尚浅,未能完成相关的工作。
性能问题在上文已经说了,经过测试,当文字超过7000字时,就会出现0.4秒左右的延迟,内存占用也会逐渐变高。使用YYTextView以后内存急剧增加,通常7000字时就会达到100M。但是YYTextView提供了很多方便。考虑到实用性还是选择了YYTextV
配合YYTextView实现语法高亮
YYTextView拥有Parser的协议,只需要遵守该协议就可以实现一个Parser。同时还需要设置Parser属性;
//该方法会传入一个富文本,在这个方法里写入我们需要匹配的代码,然后调用相关方法就可以进行实时语法高亮- (BOOL)parseText:(NSMutableAttributedString *)text selectedRange:(NSRangePointer)range
{//举个栗子:高亮标题
NSRegularExpression *headerRegex = [NSRegularExpression regularExpressionWithPattern:@&^((//#{1,5}+//s+[^#].*))$& options:0 error:nil];
[headerRegex enumerateMatchesInString:str options:0 range:NSMakeRange(0, str.length) usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
[text yy_setColor:self.headerColor range:result.range];
[text yy_setFont:self.headerFont range:result.range];
至此,我们的Markdown编辑器语法高亮就实现了,使用同样的方法我们还可以实现搜索时的文本实时高亮。正则表达式实在太强大,熟悉掌握可以给我们减去很多麻烦。如果有想跟我探讨的相关问题的同学可以联系我,这个App尚在开发中,如果有美工愿意同我一起开发请给我发邮件:)
以上是的内容,更多
的内容,请您使用右上方搜索功能获取相关信息。
若你要投稿、删除文章请联系邮箱:zixun-group@service.aliyun.com,工作人员会在五个工作日内给你回复。
云服务器 ECS
可弹性伸缩、安全稳定、简单易用
&40.8元/月起
预测未发生的攻击
&24元/月起
为您提供0门槛上云实践机会
你可能还喜欢
你可能感兴趣
阿里云教程中心为您免费提供
手把手带你实现Markdown编辑器语法高亮相关信息,包括
的信息,所有手把手带你实现Markdown编辑器语法高亮相关内容均不代表阿里云的意见!投稿删除文章请联系邮箱:zixun-group@service.aliyun.com,工作人员会在五个工作日内答复
售前咨询热线
服务与支持
账号与支持
关注阿里云
International

我要回帖

更多关于 手机gif编辑软件 的文章

 

随机推荐