nl_tokens: 将两个路径比较，得出相对路径
pl_tokens: public static String getRelativePath ( String base , String path , String equalPath ) { // 如果两个路径相等
   if ( base . equals ( path ) || "./" . equals ( path ) || "." . equals ( path ) ) { return equalPath ; } // 开始判断
   String [ ] bb = Strings . splitIgnoreBlank ( getCanonicalPath ( base ) , "[\\\\/]" ) ; String [ ] ff = Strings . splitIgnoreBlank ( getCanonicalPath ( path ) , "[\\\\/]" ) ; int len = Math . <mask> ( bb . length , ff . length ) ; int pos = 0 ; for ( ; pos < len ; pos ++ ) if ( ! bb [ pos ] . equals ( ff [ pos ] ) ) break ; // 证明路径是相等的
   if ( len == pos && bb . length == ff . length ) { return equalPath ; } // 开始查找不同
   int dir = 1 ; if ( base . endsWith ( "/" ) ) dir = 0 ; StringBuilder sb = new StringBuilder ( Strings . dup ( "../" , bb . length - pos - dir ) ) ; sb . append ( Lang . concat ( pos , ff . length - pos , ' ' , ff ) ) ; if ( path . endsWith ( "/" ) ) sb . append ( ' ' ) ; return sb . toString ( ) ; }