程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> java dom4j解析xml用到的幾個辦法

java dom4j解析xml用到的幾個辦法

編輯:關於JAVA

java dom4j解析xml用到的幾個辦法。本站提示廣大學習愛好者:(java dom4j解析xml用到的幾個辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是java dom4j解析xml用到的幾個辦法正文


%Q

用於替換雙引號的字符串. 當你須要在字符串裡放入許多引號時刻, 可以直接用上面辦法而不須要在引號前逐一添加反斜槓 (\")

>> %Q(Joe said: "Frank said: "#{what_frank_said}"")
=> "Joe said: "Frank said: "Hello!"""
(...)也可用其他非數字字母的符號或成對的符號取代, 諸如[...], !...!, +...+,{...}, <...>等.

以下寫法全體與下面等效:


>> %Q!Joe said: "Frank said: "#{what_frank_said}""!
>> %Q[Joe said: "Frank said: "#{what_frank_said}""]
>> %Q+Joe said: "Frank said: "#{what_frank_said}""+
除此以外還可省略Q寫作:

>> %/Joe said: "Frank said: "#{what_frank_said}""/
=> "Joe said: "Frank said: "Hello!"""

%q

與%Q相似, 然則表現的是單引號字符串

>> %q(Joe said: 'Frank said: '#{what_frank_said} ' ')
=> "Joe said: 'Frank said: '\#{what_frank_said} ' '"

%W

語法近似於%Q, 用於表現個中元素被雙引號括起的數組.

>> %W(#{foo} Bar Bar\ with\ space)
=> ["Foo", "Bar", "Bar with space"]

%w

用於表現個中元素被單引號括起的數組. 比擬奇異的是\(斜槓空格)會被轉化成(空格), 然則其他的內容不會.

>> %w(a b c\ d \#e #{1}f)
=> ["a", "b", "c d", "\\#e", "\#{1}f"]


%x

應用`辦法履行一段shell劇本並前往尺度輸入內容.

>> %x(echo foo:#{foo})
=> "foo:Foo\n"

%r

語法近似於%Q, 用於正則表達式.

>> %r(/home/#{foo})
 => "/\\/home\\/Foo/"

%s

用於表現symbol, 然則不會對個中表達式等外容停止轉化

>> %s(foo)
=> :foo
>> %s(foo bar)
=> :"foo bar"
>> %s(#{foo} bar)
=> :"\#{foo} bar"

%i

Ruby 2.0 以後引入的語法, 用於生成一個symbol數組
2.0.0p247 :014 > %i(a b c)
=> [:a, :b, :c]

 


附:另外一篇


%{String}  用於創立一個應用雙引號括起來的字符串
%Q{String} 用於創立一個應用雙引號括起來的字符串

%Q!Some String of “Characters”! <==> ” Some String of /”Characters/” “
%q{String} 用於創立一個應用單引號括起來的字符串
%q!Some String of “Characters”! <==> ‘Some String of Characters'
%r{String} 用於創立一個正則表達式字面值
%r{/usr/bin/} <==> ///usr//bin///
%w{String} 用於將一個字符串以空白字符切分紅一個字符串數組,停止較少調換
%W{String} 用於將一個字符串以空白字符切分紅一個字符串數組,停止較多調換
%W(North South East West) <==> ["North", "South", "East", "West"]
%s{String} 用於生成一個符號對象
%x{String} 用於履行String所代表的敕令
%x{ ls /usr/local } <==> `ls /usr/local`


PS:下面幾個%表現法頂用{}擴住了String,其實這個{} 只是一種朋分符,可以換成其余字符,好比(),那末%表現法就是%(String),固然還可所以其余字符,關於非括號類型的朋分符,閣下雙方要雷同, 如%!String!

上面我對這些表現法簡略舉幾個例子:

%{String}用於創立一個應用雙引號括起來的字符串
這個表現法與%Q{String}完整一樣,這邊直接句個例子看成果:

result = %{hello} 
puts "result is: #{result}, Type is:#{result.class}" 
成果: result is: hello, Type is:String

%Q{String}用於創立一個應用雙引號括起來的字符串
%q{String}用於創立一個應用單引號括起來的字符串
從解釋中可以看出這兩個表現法的差別就是一個應用雙引號,一個應用單引號。應用雙引號的字符串會對字符串中的變量做較多調換,而單引號則做較少的調換,具 體看例子。先看%Q{String}:
world = "world" 
result = %Q{hello #{world}} 
puts "result is: #{result}, Type is:#{result.class}" 
成果: result is: hello world, Type is:String

換成%q{String}:
world = "world" 
result = %q{hello #{world}} 
puts "result is: #{result}, Type is:#{result.class}" 
成果: result is: hello #{world}, Type is:String

從下面的成果可以看出,較少調換的情形下,#{world}被解析成了字符串,而不會去盤算這個變量中的值。

%r{String}用於創立一個正則表達式字面值
就像應用/reg/方法一樣,看代碼:
result = %r{world} 
puts result =~ "hello world" 
puts "result is: #{result}, Type is:#{result.class}" 
成果: 6 result is: (?-mix:world), Type is:Regexp

可以看出,world從第6個字符開端婚配

%w{String}用於將一個字符串以空白字符切分紅一個字符串數組,停止較少調換
%W{String}用於將一個字符串以空白字符切分紅一個字符串數組,停止較多調換
這兩個應當是年夜家見過最多的,用這個方法結構數組,可以省下一些逗號,Ruby真 是會慣壞年夜家,今後年夜家都不消標點符號了。
異樣給一個簡略的例子:
result = %w{hello world} 
puts "result is: #{result}, Type is:#{result.class}, length is:#{result.length}" 
成果: result is: helloworld, Type is:Array, length is:2

%s{String}用於生成一個符號對象
直接先上代碼:
result = %s{hello world} 
puts "result is: #{result}, Type is:#{result.class}" 
sym = :"hello world" 
puts "the two symbol is the same: #{sym == result}" 
成果:
result is: hello world, Type is:Symbol
the two symbol is the same: true

可以看出,這兩中方法生成的symbol對象完整一樣

%x{String}用於履行String所代表的敕令
好比:
%x{notepad.exe}可以啟動windows下的記事本,這裡我就不列成果了(那是一個年夜家熟習的窗口)。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved