RegX 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
RegX 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议: MIT
开发语言: Swift Objective-C
操作系统: OS X
收录时间: 2014-12-23
提 交 者: 红薯

RegX 是一款非常实用的 Xcode 插件,由中国的 iOS/Mac 开发者 Krunoslav Zaher 使用 Swift 和 Objective-C 编写。其用于对齐特定源代码的元素,使得代码更易读和易理解。你可以在这里获取源码。

 安装:

  1.  $ git clone git@github.com:kzaher/RegX.git

  2.  在 Xcode 中构建(构建方案会自动将编译好的插件 bundle 安装到 Xcode 能够找到的地方

  3.  重启 Xcode

如果 RegX 没有正常工作,请检查一下启动 Xcode 时 Console.app 中的输出信息,并且找到错误消息。这有可能是因为你的 Xcode 版本的 DVTPlugInCompatibilityUUID 还没有被指定在 >> Info.plist 文件。为了解决该问题,请向 Info.plist 文件中添加 DVTPlugInCompatibilityUUID 条目。

RegX 如何工作?

RegX 使用正则表达式对列中的文本进行分组,然后对齐这些列。每个正则表达式分组都会创建一个垂直对齐的列。你可以自己为列指定额外的设置。

 定制

所有正则表达式以及针对正则表达式的设置都被定义在名为 Configuration.swift 的文件中。

 比如:

static let assignments = "^" +
        "   (?# lvalue GROUP)" +
        "       ([^=]*)" +
        "   (?# = GROUP)" +
        "       (\\=) " +
        "   (?# expression GROUP)" +
        "       ((?:[^/] | (?:/(?!/)) )*)" +
        "   (?# comments GROUP)" +
        "       (//.*)?" +
        "$"
RegularForm(name: "Assignments",                            // name in Edit -> RegX menu
         pattern: Patterns.assignments,                     // grouping regular expression
        shortcut: String(UnicodeScalar(NSF4FunctionKey)),   // shortcut key
        modifier: NSEventModifierFlags.CommandKeyMask,      // shortcut modifier
        settings: [                                         // each setting controls start and end padding
                GroupSettings(nil, 0),                      // nil means keep existing padding
                GroupSettings(1,   1),                      // value means ensure padding
                GroupSettings(0,   0),
                GroupSettings(1,   0),
            ]
        )
展开阅读全文

代码

RegX 的相关博客

se_regx

#数据提取模板页 #标题 title=<h1 class=\"atl\\-title\"><span class=\"s_title\"><span style=\"font\\-weight:400;\">(.*...

php---判断email格式的regx(正则表达式)

email格式的regx(正则表达式): //验证email的正确性 function checkEmail($email){ $ret=false; if...

java 判断一个字符串是不是整数、浮点数、科学计数(正则表达式)

public static boolean isNumeric(String str) { if (null == str || "".equals(str)) { return false; } String regx = "[+-...

正则表达式中模式修正符作用详解(i、g、m、s、x、e)

正则表达式中常用的模式修正符有i、g、m、s、x、e等。它们之间可以组合搭配使用。 它们的作用如下: //修正符:i 不区分大小写...

typecho路由机制详解

本文介绍的是typecho的路由机制,引自 不烦恼 路由机制是typecho的核心,有很多功能都是基于路由功能设计的,理解并熟悉TE的路...

C# 正则表达式输出查询结果

//正则 第一种方法 Regex regex = new Regex(@"\d{0,}\.\d{0,}\,\d{0,}\.\d{0,}");//经纬度表达式 string result = regex.Ma...

转 JS正则表达式的RegExp对象和括号的使用

RegExp对象的创建: 常规的正则表达式的创建可用直接量,即斜杠 “/” 括起来的字符。但在要求参数变化的环境下,RegExp()构造...

正则

^[a-z0-9]([0-9a-z_])+$ "^[\u4e00-\u9fa5a-zA-Z0-9]+$" 2010-07-19 17:12 6194人阅读 评论(2) 收藏 举报 目录(?)[+] 正则表达...

Java 正则

00:00 ~ 23:59 时间字符串 String nowOnlyTime = "05:02"; nowOnlyTime.matches("((\[01\]\\\d)|(2\[0-3\])):\[0-5\]\\\d"); ...

RegX 的相关问答

评论 (0)

加载中
更多评论
0 评论
12 收藏
分享
返回顶部
顶部