<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>sunshineboy (陈鉴)</title>
    <link>https://ruby-china.org/sunshineboy</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>alipay gem 的一些问题</title>
      <description>&lt;h2 id="移动支付接口"&gt;移动支付接口&lt;/h2&gt;&lt;h2 id="Name"&gt;Name&lt;/h2&gt;&lt;h2 id="https://github.com/chloerei/alipay"&gt;&lt;a href="https://github.com/chloerei/alipay" rel="nofollow" target="_blank"&gt;https://github.com/chloerei/alipay&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;mobile.securitypay.pay&lt;/p&gt;
&lt;h2 id="Definition"&gt;Definition&lt;/h2&gt;
&lt;p&gt;Alipay::Mobile::Service.mobile_securitypay_pay_string({ARGUMENTS}, {OPTIONS})&lt;/p&gt;
&lt;h2 id="Example"&gt;Example&lt;/h2&gt;
&lt;p&gt;Alipay::Mobile::Service.mobile_securitypay_pay_string(
  out_trade_no: '20150401000-0001',
  notify_url: '&lt;a href="https://example.com/orders/20150401000-0001/notify" rel="nofollow" target="_blank"&gt;https://example.com/orders/20150401000-0001/notify&lt;/a&gt;'
  subject: 'subject',
  total_fee: '10.00',
  body: 'text'
)&lt;/p&gt;
&lt;h2 id="=&gt; service="&gt;=&amp;gt; service="mobile.securitypay.pay"&amp;amp;_input_charset="utf-8"&amp;amp;partner=...&lt;/h2&gt;&lt;h2 id="话说下面的zip链接已经实效了，谁能给个包，感谢@user1"&gt;话说下面的 zip 链接已经实效了，谁能给个包，感谢&lt;a href="/REI" class="user-mention" title="@REI"&gt;&lt;i&gt;@&lt;/i&gt;REI&lt;/a&gt;
&lt;/h2&gt;</description>
      <author>sunshineboy</author>
      <pubDate>Sat, 06 May 2017 00:05:02 +0800</pubDate>
      <link>https://ruby-china.org/topics/32939</link>
      <guid>https://ruby-china.org/topics/32939</guid>
    </item>
    <item>
      <title>.gitignore 文件配置层级跟踪问题</title>
      <description>&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/11f1d26d31b8b598b6d0e4658a3924dd.png!large" title="" alt=""&gt;&lt;/p&gt;
&lt;h3 id="跟踪"&gt;跟踪&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;跟踪public/upload/cmi/mdm_repair_exes&lt;/code&gt;而不跟踪 public/upload/下面的其他文件夹&lt;/p&gt;
&lt;h3 id="场景"&gt;场景&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;项目脚本中不写入创建文件夹语句,而是将图片生成在已存在的文件夹内&lt;/code&gt;&lt;/p&gt;</description>
      <author>sunshineboy</author>
      <pubDate>Fri, 31 Mar 2017 09:41:59 +0800</pubDate>
      <link>https://ruby-china.org/topics/32670</link>
      <guid>https://ruby-china.org/topics/32670</guid>
    </item>
    <item>
      <title>正则使用方法简单的整理</title>
      <description>&lt;h5 id="1.创建正则"&gt;1.创建正则&lt;/h5&gt;
&lt;p&gt;&lt;code&gt;one:   re = Regexp.new("Ruby")&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;two:   re = /Ruby/&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;three: re = %r(Ruby)、%r&amp;lt;Ruby&amp;gt;、%r|Ruby|、%r!Ruby!&lt;/code&gt;&lt;/p&gt;
&lt;h5 id="2.正则模式匹配(索引从0开始)"&gt;2.正则模式匹配 (索引从 0 开始)&lt;/h5&gt;
&lt;p&gt;&lt;code&gt;one:   模式 ~= 字符串&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;two:   模式 != 字符串&lt;/code&gt;&lt;/p&gt;
&lt;h5 id="3.匹配模式"&gt;3.匹配模式&lt;/h5&gt;&lt;table class="table table-bordered table-striped"&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;th&gt;普通字符&lt;/th&gt;
&lt;th&gt;/Ruby/&lt;/th&gt;
&lt;th&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;行首/末&lt;/td&gt;
&lt;td&gt;^ $&lt;/td&gt;
&lt;td&gt;元字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;字符串首/末&lt;/td&gt;
&lt;td&gt;\A \z&lt;/td&gt;
&lt;td&gt;元字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;指定匹配范围&lt;/td&gt;
&lt;td&gt;[a-z]&lt;/td&gt;
&lt;td&gt;a 到 z 字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;[^a-z]&lt;/td&gt;
&lt;td&gt;a 到 z 以外字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;匹配符&lt;/td&gt;
&lt;td&gt;.&lt;/td&gt;
&lt;td&gt;匹配任意字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;/^.&amp;amp;/&lt;/td&gt;
&lt;td&gt;匹配字符数为 1 的行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;\s&lt;/td&gt;
&lt;td&gt;空白符，匹配空格、制表符、换行符、换页符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;\d&lt;/td&gt;
&lt;td&gt;匹配 0~9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;\w&lt;/td&gt;
&lt;td&gt;匹配英文字母与数字 [a-zA-Z_0-9]&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;转义&lt;/td&gt;
&lt;td&gt;\&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;*&lt;/td&gt;
&lt;td&gt;重复 0 次或更多次&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;+&lt;/td&gt;
&lt;td&gt;重复 1 次或更多次&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;?&lt;/td&gt;
&lt;td&gt;重复 0 次或 1 次&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;*?&lt;/td&gt;
&lt;td&gt;(重复 0 次或更多次) 重复中最短部分&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;+?&lt;/td&gt;
&lt;td&gt;(重复 1 次或更多次) 重复中最短部分&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;()&lt;/td&gt;
&lt;td&gt;重复匹配&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;｜&lt;/td&gt;
&lt;td&gt;候补任选&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;quote&lt;/td&gt;
&lt;td&gt;转义正则表达式中所有元字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;/x/ i&lt;/td&gt;
&lt;td&gt;忽略英文字母大小写&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;/x/ x&lt;/td&gt;
&lt;td&gt;忽略空白符及#后面字符 (方便写注释)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;/x/ m&lt;/td&gt;
&lt;td&gt;可用。匹配换行符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;()&lt;/td&gt;
&lt;td&gt;捕获 ($n获取相对应的值)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;(?:)&lt;/td&gt;
&lt;td&gt;过滤不需要捕获的值&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;h5 id="4.小试牛刀(涉及贪婪匹配和懒惰匹配)"&gt;4.小试牛刀 (涉及贪婪匹配和懒惰匹配)&lt;/h5&gt;
&lt;p&gt;&lt;code&gt;/(.)(\d\d)+(.)/ =~ "1234567" 与/(.)(\d\d)+/ =~ "1234567" $1 $2 $3值的区别?&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;/(.)(?:\d\d)+(.)/ =~ "123456" $1 $2 $3值?&lt;/code&gt;&lt;/p&gt;</description>
      <author>sunshineboy</author>
      <pubDate>Fri, 17 Mar 2017 15:18:14 +0800</pubDate>
      <link>https://ruby-china.org/topics/32563</link>
      <guid>https://ruby-china.org/topics/32563</guid>
    </item>
    <item>
      <title>Mac 上安装 st3 markdown 插件、常用快捷键、基本语法</title>
      <description>&lt;h3 id="1.mac上安装st3 markdown插件"&gt;1.mac 上安装 st3 markdown 插件&lt;/h3&gt;
&lt;p&gt;Simple 安装方式&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;ctrl-~&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sublime Text 2&lt;/strong&gt;
import urllib2,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa1548d1514676163dafc88'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( '&lt;a href="http://packagecontrol.io/" rel="nofollow" target="_blank"&gt;http://packagecontrol.io/&lt;/a&gt;' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sublime Text 3&lt;/strong&gt;
import urllib.request,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa1548d1514676163dafc88'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( '&lt;a href="http://packagecontrol.io/" rel="nofollow" target="_blank"&gt;http://packagecontrol.io/&lt;/a&gt;' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Manual 安装方式&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;不建议&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="2.markdown插件选择"&gt;2.markdown 插件选择&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;编辑插件: MarkdownEditing&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;预览插件: OmniMarkupPreviewer插件&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;(可选插件)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;主题插件: Markdown Extended&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;目录插件: MarkdownTOC&lt;/code&gt;&lt;/p&gt;
&lt;h3 id="3.markdown快捷键"&gt;3.markdown 快捷键&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;预览:     alt-command-o&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;导html:   alt-command-x&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;插链接:    alt-command-k&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;插图片:    shift-command-k&lt;/code&gt;&lt;/p&gt;
&lt;h3 id="4.markdown基础语法(x代表输入)"&gt;4.markdown 基础语法 (x 代表输入)&lt;/h3&gt;&lt;table class="table table-bordered table-striped"&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;th&gt;一级标题&lt;/th&gt;
&lt;th&gt;=&lt;/th&gt;
&lt;th&gt;(文字下方-Setext-style)&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;二级标题&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;(文字下方-Setext-style)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;一...六级标题&lt;/td&gt;
&lt;td&gt;#...######&lt;/td&gt;
&lt;td&gt;(atx-style)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;块注释&lt;/td&gt;
&lt;td&gt;&amp;gt;&lt;/td&gt;
&lt;td&gt;(超过 5 个 blank-失效)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;斜体&lt;/td&gt;
&lt;td&gt;*x* _x_&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;粗体&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;x&lt;/strong&gt; __x__&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;删除线&lt;/td&gt;
&lt;td&gt;&lt;del&gt;x&lt;/del&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;无序&lt;/td&gt;
&lt;td&gt;* + - x&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;有序&lt;/td&gt;
&lt;td&gt;1.x&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;链接&lt;/td&gt;
&lt;td&gt;内联方式&lt;/td&gt;
&lt;td&gt;[Baidu1](&lt;a href="http://baidu.com" rel="nofollow" target="_blank"&gt;http://baidu.com&lt;/a&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;引用方式&lt;/td&gt;
&lt;td&gt;[Baidu][1]&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;[1]: &lt;a href="http://baidu.com" rel="nofollow" target="_blank"&gt;http://baidu.com&lt;/a&gt; "baidu"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;图片&lt;/td&gt;
&lt;td&gt;内联方式&lt;/td&gt;
&lt;td&gt;![图片 1](1.png)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;引用方式&lt;/td&gt;
&lt;td&gt;1[图片 2][1]&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;[1]: 1.png "这是图片"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;下划线&lt;/td&gt;
&lt;td&gt;___x&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;脚注&lt;/td&gt;
&lt;td&gt;`x`&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;横线&lt;/td&gt;
&lt;td&gt;---&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;语法高亮&lt;/td&gt;
&lt;td&gt;```x&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;</description>
      <author>sunshineboy</author>
      <pubDate>Wed, 15 Mar 2017 10:31:15 +0800</pubDate>
      <link>https://ruby-china.org/topics/32534</link>
      <guid>https://ruby-china.org/topics/32534</guid>
    </item>
    <item>
      <title>[着急] Ruby 或 Rails 如何将二进制转化为图片</title>
      <description>&lt;p&gt;第一张图片为后台收到的二进制 (图片)，第二张图片为前端传过来二进制，如何转化二进制为图片&lt;img title=":joy:" alt="😂" src="https://twemoji.ruby-china.com/2/svg/1f602.svg" class="twemoji"&gt; 
&lt;img src="https://l.ruby-china.com/photo/2016/015129c21b5e98b30aeb1de6eeac1cd2.png!large" title="" alt=""&gt;
&lt;img src="https://l.ruby-china.com/photo/2016/a181fb5ae97be8f0a416267618002c11.jpg!large" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>sunshineboy</author>
      <pubDate>Fri, 30 Sep 2016 09:38:49 +0800</pubDate>
      <link>https://ruby-china.org/topics/31208</link>
      <guid>https://ruby-china.org/topics/31208</guid>
    </item>
  </channel>
</rss>
