改进正则表达式以识别Wordpress站点

时间:2013-04-26 19:19:21

标签: regex wordpress

因此,我正在编写一个小片段,首先通过正则表达式识别wordpress网站,然后尝试访问登录页面等。

这可以更优化吗?我应该考虑属性之间的空格吗?

Regex wordPressPattern = new Regex("(<meta name=\"generator\" content=\"WordPress)| (Powered by <a href=\"http://www.wordpress.org\")+", RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.Singleline);

1 个答案:

答案 0 :(得分:1)

一些改进:

  • 考虑空格
  • 最后删除+因为没有意义
  • 制作www。可选的
  • 制作httpS(S可选)
  • 如果有单引号而不是双引号(有效的HTML)怎么办?我们将使用("|')
  • name=\"generator\"我认为它不相关,因此我们将使用.*?并在末尾添加[^>]*>

总结一下:

(<meta.*?content\s*=\s*(\"|')WordPress[^>]*>)|(Powered\s+by\s+<a\s+href\s*=\s*(\"|')http(s)?://(www.)?wordpress.org(\"|'))