gml520
2008-06-23 14:02
浏览 223

如何使用JS的正则表达式检查 java中的文档注释? (用于代码高亮)

例如:
在java 中可以这样写文档注释
/**
*这个是注释
*
*/

我想实现的效果是
[color=green]/**
*这个是注释
*
*/[/color]

现在我想用JS 的正则表达式 匹配他我写了如下的代码但是就是不起作用,只能匹配 /** 其他剩下的都不能匹配.

[color=red]MultiLineCComments : new RegExp('/\*[\s\S]*?\*/', 'gm'),[/color]

希望哪为朋友帮帮忙,帮我修改一下这个正则表达式,使其能够正常工作.谢谢!
[b]问题补充:[/b]
其实我这段代码是MultiLineCComments : new RegExp('/\*[\s\S]*?\*/', 'gm'), 是dp.SyntaxHighlighter 中的代码,发现他不能正常工作.所以想自己修改他,而后又发现自己改不了它,google,百度 了很长时间无果.

congjl2002 你的回答也不能使他正常的工作.不过还是谢谢你的回答.

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • congjl2002 2008-06-23 14:52
    已采纳

    因为你这个涉及到多行,所以直接匹配是不行的
    一个办法是首先判断行数,然后使用(\s*\n)来匹配硬回车,硬回车指的是按Enter产生的回车
    然后有几行就写几个
    以下以3行为例,即匹配
    [code="java"]/**9)(fsdaf3
    rfdfdf
    4343*/[/code]

    [code="java"]^/*.*(\s*\n).*(\s*\n).**/$[/code]
    里面没有用\做转译,直接是测试的正则表达式,你自己添一下就可以了

    已采纳该答案
    打赏 评论
  • congjl2002 2008-06-24 21:54

    如果这样不行的话那就只能将多行变为一行了,每行回车出使用一个符号标示,如
    ,然后写出去的时候再给转义过来,还没有其他好办法

    打赏 评论

相关推荐 更多相似问题