Permanently protected module

모듈:문자열 2

Module

현지의 p = {}  p.다듬다 = 기능.()  돌아가다 mw.본문.다듬다(.논병아리[1] 또는 "") 끝.  p.문장. = 기능. ()  {{lc:}}은(는) 스트립으로 고정된 안전한 문자열입니다. lower는 그렇지 않습니다.  .논병아리[1] = :콜 파서 함수('lc', .논병아리[1])  돌아가다 p.ucfirst() 끝.  p.ucfirst = 기능. ( )  현지의 s =  mw.본문.다듬다( .논병아리[1] 또는 "" )  현지의 s1 = ""  만약 그것이 리스트 컷오프라면, 그리고 (s1로 저장) 첫 번째 <li>까지의 모든 것.  현지의 리포 = mw.ustring.찾아내다(s, "<li>" )  한다면 리포 그리고나서   s1 = mw.ustring.후보선수(s, 1, 리포 + 3)   s = mw.ustring.후보선수(s, 리포 + 4)  끝.  s1은 "" 또는 목록 마크업의 첫 번째 부분이므로 계속할 수 있습니다.  반환된 문자열에 s1을 추가합니다.  현지의 레터포스  한다면 mw.ustring.찾아내다(s, "^%[%[[^ ]+ [^%]]+%]%]") 그리고나서   이것은 파이프로 연결된 위키링크이기 때문에 우리는 파이프가 아닌 텍스트를 대문자로 표시합니다.   현지의 _   _, 레터포스 = mw.ustring.찾아내다(s, %W*%w") 파이프 뒤의 첫 글자를 찾습니다.  또 다른   레터포스 = mw.ustring.찾아내다(s, '%w')  끝.  한다면 레터포스 그리고나서   현지의 첫번째 = mw.ustring.후보선수(s, 1, 레터포스 - 1)   현지의 편지 = mw.ustring.후보선수(s, 레터포스, 레터포스)   현지의 쉬다 = mw.ustring.후보선수(s, 레터포스 + 1)   돌아가다 s1 .. 첫번째 .. mw.ustring.위쪽의(편지) .. 쉬다  또 다른   돌아가다 s1 .. s  끝. 끝.  p.제목 = 기능. ( )  -- http://grammar.yourdictionary.com/capitalization/rules-for-capitalization-in-titles.html  미국 정부 인쇄 사무소 스타일 설명서에 의해 권장됨:  "출판물과 문서의 제목에 있는 모든 단어를 대문자로 표시하고,  a, an, the, at, by, for, in, on, to, up, as, but, or, nor를 제외하고,"  현지의 항상 낮은 = {[a.] = 1, ['안'] = 1, ['그'] = 1,   ['그리고'] = 1, ['하지만'] = 1, ['또는'] = 1, ['용'] = 1,   ['nor] = 1, ['온'] = 1, [] = 1, ['''at'''] = 1, ['행'] = 1,   ['출신'] = 1, ['by'] = 1, [] = 1, ['위'] = 1 }  현지의 res = ''  현지의 s =  mw.본문.다듬다( .논병아리[1] 또는 "" )  현지의 단어 = mw.본문.분열되다( s, " ")  위해서 i, s  짝을 짓다(단어) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다   {{lc:}}은(는) 스트립으로 고정된 안전한 문자열입니다. lower는 그렇지 않습니다.   s = :콜 파서 함수('lc', s)   한다면 i == 1 또는 항상 낮은[s] ~= 1 그리고나서    s = mw.콘텐츠 언어 가져오기():ucfirst(s)   끝.   단어[i] = s  끝.  돌아가다 테이블.콘캣(단어, " ") 끝.  find last 목록에서 마지막 항목을 찾습니다. 이름 없는 첫 번째 매개 변수는 목록입니다. 두 번째, 선택적인 이름 없는 매개 변수는 목록 구분 기호입니다(기본값 = 쉼표 공간). 구분 기호를 찾을 수 없는 경우 전체 목록을 반환합니다. p.꼴찌를 보다 = 기능.()  현지의 s =  mw.본문.다듬다( .논병아리[1] 또는 "" )  현지의  = .논병아리[2] 또는 ""  한다면  == "" 그리고나서  = ", " 끝.  현지의 양식 = ".*" ..  .. "(.*)"  현지의 a, b, 지난 = s:찾아내다(양식)  한다면 a 그리고나서   돌아가다 지난  또 다른   돌아가다 s  끝. 끝.  stripZero는 첫 번째 숫자를 찾고 선행 0을 제거합니다(단위 제외). 예: "0940" -> "940", "연도: 0023" -> "연도: 23", "00.12" -> "0.12" p.스트립 제로 = 기능.()  현지의 s = mw.본문.다듬다(.논병아리[1] 또는 "")  현지의 n = 수에 달하여( string.match( s, %d+" ) ) 또는 ""  s = string.gsub( s, %d+", n, 1 )  돌아가다 s 끝.  nowiki는 텍스트 문자열이 MediaWiki 소프트웨어에 의해 단순한 문자열로 처리되도록 보장합니다. 이름이 지정되지 않은 매개 변수를 사용하여 공백을 잘라낸 다음 Wiki 코드를 제거합니다. p.노비키 = 기능.()  현지의 스트르 = mw.본문.다듬다(.논병아리[1] 또는 "")  돌아가다 mw.본문.노비키(스트르) 끝.  구분 기호로 지정된 경계에서 텍스트를 분할합니다. 인덱스 idx에 대한 청크를 반환합니다(1부터 시작). #선택:String2 분할 텍스트 구분 기호 색인 참/거짓 #선택:String2 분할 txt=text sep= 구분자 idx=index plain= true/false 플레인이 false/no/0이면 구분 기호가 Lua 패턴으로 처리됩니다. 기본값은 플레인=true입니다. p.분열되다 = 기능.()  현지의 논병아리 = .논병아리  한다면 것은 아니다.(논병아리[1] 또는 논병아리.txt) 그리고나서 논병아리 = :상위 항목 가져오기().논병아리 끝.  현지의 txt = 논병아리[1] 또는 논병아리.txt 또는 ""  한다면 txt == "" 그리고나서 돌아가다 영의 끝.  현지의  = (논병아리[2] 또는 논병아리. 또는 ""):gsub('"', '')  현지의 idx = 수에 달하여(논병아리[3] 또는 논병아리.idx) 또는 1  현지의 평지 = (논병아리[4] 또는 논병아리.평지 또는 "참"):후보선수(1,1)  평지 = (평지 ~= "f" 그리고. 평지 ~= "n" 그리고. 평지 ~= "0")  현지의 산산조각이 나다 = mw.본문.분열되다( txt, , 평지 )  한다면 idx < 0 그리고나서 idx = #산산조각이 나다 + idx + 1 끝.  돌아가다 산산조각이 나다[idx] 끝.  val2%는 문자열을 통해 검색하며 이름이 지정되지 않은 첫 번째 매개 변수 또는 txt=로 전달됩니다. 찾은 각 숫자를 백분율로 변환하고 결과 문자열을 반환합니다. p.val 2 퍼센트 = 기능.()  현지의 논병아리 = .논병아리  한다면 것은 아니다.(논병아리[1] 또는 논병아리.txt) 그리고나서 논병아리 = :상위 항목 가져오기().논병아리 끝.  현지의 txt = mw.본문.다듬다(논병아리[1] 또는 논병아리.txt 또는 "")  한다면 txt == "" 그리고나서 돌아가다 영의 끝.  현지의 기능. v2p (x)   x = (수에 달하여(x) 또는 0) * 100   한다면 x == 수학.플로어(x) 그리고나서 x = 수학.플로어(x) 끝.   돌아가다 x .. "%"  끝.  txt = txt:gsub("%d[%d%]*", v2p) 문자열만 저장합니다.  돌아가다 txt 끝.  one2a는 문자열을 스캔하며, 이름이 지정되지 않은 첫 번째 매개 변수 또는 txt=로 전달됩니다. 각 '하나'를 'a' 또는 'an'으로 변환하고 결과 문자열을 반환합니다. p.원투어 = 기능.()  현지의 논병아리 = .논병아리  한다면 것은 아니다.(논병아리[1] 또는 논병아리.txt) 그리고나서 논병아리 = :상위 항목 가져오기().논병아리 끝.  현지의 txt = mw.본문.다듬다(논병아리[1] 또는 논병아리.txt 또는 "")  한다면 txt == "" 그리고나서 돌아가다 영의 끝.  txt = txt:gsub(하나, a."):gsub("^1", "a"):gsub("하나", "A"):gsub("a ([aeiou])", "% 1"):gsub("A([aieou])", "% 1")  돌아가다 txt 끝.  페이지 텍스트 찾기 페이지에서 텍스트의 위치를 반환합니다. 첫 번째 위치 매개 변수 또는 텍스트는 검색 텍스트입니다. 선택적 매개변수 제목은 페이지 제목이며, 기본값은 현재 페이지입니다. 일반 검색(기본값)의 경우 true이고 Lua 패턴 검색의 경우 false입니다. 일치하지 않는 옵션 매개 변수는 일치하지 않는 경우 반환 값이며, 기본값은 0입니다. p._페이지 텍스트 찾기 = 기능.(논병아리)  프로세스 매개 변수  현지의 비길 데 없는 = 논병아리.비길 데 없는 또는 ""  한다면 비길 데 없는 == "" 그리고나서 비길 데 없는 = 영의 끝.  --  현지의 본문 = mw.본문.다듬다(논병아리[1] 또는 논병아리.본문 또는 "")  한다면 본문 == "" 그리고나서 돌아가다 영의 끝.  --  현지의 제목 = 논병아리.제목 또는 ""  현지의 titleobj  한다면 제목 == "" 그리고나서   titleobj = mw.제목.현재 제목 가져오기()  또 다른   titleobj = mw.제목.신규(제목)  끝.  --  현지의 평지 = 논병아리.평지 또는 ""  한다면 평지:후보선수(1, 1) == "f" 그리고나서 평지 = 거짓의 또 다른 평지 = 진실의 끝.  페이지 내용을 가져오고 '텍스트'를 찾습니다. 위치를 반환하거나 일치하지 않습니다.  현지의 내용물 = titleobj 그리고. titleobj:콘텐츠 가져오기()  돌아가다 내용물 그리고. mw.ustring.찾아내다(내용물, 본문, 1, 평지) 또는 비길 데 없는 끝. p.페이지 텍스트 찾기 = 기능.()  현지의 논병아리 = .논병아리  현지의 잔디밭 = :상위 항목 가져오기().논병아리  위해서 k, v  쌍들(잔디밭) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다   논병아리[k] = v  끝.  한다면 것은 아니다. (논병아리[1] 또는 논병아리.본문) 그리고나서 돌아가다 영의 끝.  첫 번째 값  돌아가다 (p._페이지 텍스트 찾기(논병아리)) 끝.  디코딩된 URL을 반환합니다.파서 함수의 역함수 {{urlencode:val TYPE}} 유형: 쿼리는 +를 공백으로 디코딩합니다(기본값). PATH는 추가 디코딩을 수행하지 않습니다. Wiki가 _ 공간으로 디코딩합니다. p._urldecode = 기능.(URL, 유형)  URL = URL 또는 ""  유형 = (유형 == "PATH" 또는 유형 == "WIKI") 그리고. 유형  돌아가다 mw.uri.암호를 해독하다( URL, 유형 ) 끝. {{#선택사항:String2 urldecode url=url type=type} 문자열 p.도시의 십진법 = 기능.()  돌아가다 mw.uri.암호를 해독하다( .논병아리.URL, .논병아리.유형 ) 끝.  다음 항목이 모듈에서 병합되었습니다.문자열 펑크  도우미 기능 p._ 매개 변수 가져오기 = 요구하다('모듈:매개 변수 가져오기')  모듈에 따라 인수 목록 도우미 기능: p._ 매개 변수 가져오기 = p._ 매개 변수 가져오기.매개 변수 가져오기  이스케이프 패턴 도우미 기능을 통해 모듈에 따라 모든 문자가 일반 텍스트로 처리됩니다. 기능. p._탈출 패턴( pattern_str)  돌아가다 mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" ) 끝.  모듈에 따라 부울 문자열을 해석하는 도우미 기능: p._Boolean을 구함 = p._ 매개 변수 가져오기.불리언이 나다  --[[ 벗다  이 함수는 문자열에서 문자를 제거합니다.  용도: {{#선택사항:string2 strip source_string characters_to_strip plain_flag} 문자열  매개변수 출처:제거할 문자열 chars: 문자열에서 제거할 패턴 또는 문자 목록, "로 대체됨 플레인: 문자를 플레인 텍스트로 이해해야 함을 나타내는 플래그입니다. 기본값은 true입니다.  선행 및 후행 공백도 문자열에서 자동으로 제거됩니다. ]] 기능. p.벗다(  )  현지의 새_인수 = p._ 매개 변수 가져오기( .논병아리,  {'소스', 'chars, '''비공식'''} )  현지의 source_str = 새_인수['소스'] 또는 ''  현지의 차들 = 새_인수['chars] 또는 '' 또는 '카멜레온'  source_str = mw.본문.다듬다(source_str)  한다면 source_str == '' 또는 차들 == '' 그리고나서   돌아가다 source_str  끝.  현지의 l_combines = p._Boolean을 구함( 새_인수['''비공식'''] 또는 진실의 )  한다면 l_combines 그리고나서   차들 = p._탈출 패턴( 차들 )  끝.  현지의 결과  결과 = mw.ustring.gsub(source_str, "["..차들.."]", '')  돌아가다 결과 끝.  --[[ 임의 일치 입력과 일치하는 첫 번째 지정된 패턴의 인덱스를 반환합니다.패턴에는 일련 번호를 지정해야 합니다. {{#}에서 사용할 때 일치하는 항목이 없으면 빈 문자열을 반환합니다.}}  용도: {{#선택사항:String2 matchAll source=123 abc 456 abc}: '2'를 반환합니다.  매개 변수: source: 검색할 문자열 플레인: 패턴을 플레인 텍스트로 이해해야 함을 나타내는 플래그입니다. 기본값은 true입니다. 1, 2, 3, ...검색할 패턴 ]] 기능. p.matchAny()  현지의 source_str = .논병아리['소스'] 또는 오류('소스 매개 변수는 필수입니다.')  현지의 l_combines = p._Boolean을 구함( .논병아리['''비공식'''] 또는 진실의 )  위해서 i = 1, 수학, 수학,수학 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다   현지의 양식 = .논병아리[i]   한다면 것은 아니다. 양식 그리고나서 돌아가다 '' 끝.   한다면 mw.ustring.찾아내다(source_str, 양식, 1, l_combines) 그리고나서    돌아가다 끈으로 묶는(i)   끝.  끝. 끝.  --[--------------------------< HY HEN _ TO _ DASH >------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  특정 조건에서 하이픈을 대시로 변환합니다.하이픈은 분리해야 합니다. 동일한 항목, 동일하지 않은 항목은 수정되지 않은 채 반환됩니다.다음 양식이 수정되었습니다. 레터 - 레터(A - B 숫자 - 숫자(4-5) 숫자 구분자 숫자 - 숫자 구분자 숫자(4.1-4.5 또는 4-1-4-5) 문자 자릿수 - 문자 자릿수(A1-A5)(문자와 문자 사이의 선택적 구분 기호) 숫자 지원 – a.1-a.5 또는 a-1-a-5) 숫자 문자 - 숫자 문자(5a - 5d)(문자와 문자 사이의 선택적 구분 기호) 숫자 지원 – 5.a-5.d 또는 5-a-5-d)  다른 양식은 수정되지 않고 반환됩니다.  str은 쉼표 또는 세미콜론으로 구분된 리스트일 수 있습니다.  ]] 기능. p.하이픈_to_message( 스트르, 띄어쓰기 )  한다면 (스트르 == 영의 또는 스트르 == '') 그리고나서   돌아가다 스트르  끝.   현지의 수락   스트르 = mw.본문.암호를 해독하다(스트르, 진실의 )           html 엔티티를 문자로 대체합니다. 세미콜론은 텍스트를 망칩니다.   현지의 나가. = {}  현지의 목록. = mw.본문.분열되다 (스트르, '%s*[,;]%s*')        분할 strat 쉼표 또는 세미콜론 구분 기호(있는 경우)   위해서 _, 항목  짝을 짓다 (목록.) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다            목록의 각 항목에 대해   항목 = mw.본문.다듬다(항목)            여백을 다듬다   항목, 수락 = 항목:gsub ('^%(%((.+)%)%)
                
, '%1') 한다면 수락 == 0 그리고. mw.ustring.경기 (항목, '^%w*[%%-?]%w+%s*[%---]%s*%w*[%-%-?%w+
$$SIDE_BOTTOM$$
    $$BOTTOM$$