"함수 kebab case()"의 두 판 사이의 차이

(새 문서: 분류: kebab case ==개요== {{DISPLAYTITLE:함수 kebab_case()}} ;함수 kebab_case() ==PHP== 분류: PHP {{참고|PHP kebab_case()}} <source lang='php'> function kebab_cas...)
 
잔글 (봇: 자동으로 텍스트 교체 (-source +syntaxhighlight))
7번째 줄: 7번째 줄:
[[분류: PHP]]
[[분류: PHP]]
{{참고|PHP kebab_case()}}
{{참고|PHP kebab_case()}}
<source lang='php'>
<syntaxhighlight lang='php'>
function kebab_case($value) {
function kebab_case($value) {
     if (ctype_lower($value)) return $value;
     if (ctype_lower($value)) return $value;
25번째 줄: 25번째 줄:
# Foobar → foobar
# Foobar → foobar
# FOOBAR → f-o-o-b-a-r
# FOOBAR → f-o-o-b-a-r
</source>
</syntaxhighlight>


==Python==
==Python==
[[분류: Python]]
[[분류: Python]]
{{참고|Python kebab_case()}}
{{참고|Python kebab_case()}}
<source lang='python'>
<syntaxhighlight lang='python'>
import re
import re
def kebab_case(s):
def kebab_case(s):
46번째 줄: 46번째 줄:
# Foobar → foobar
# Foobar → foobar
# FOOBAR → f-o-o-b-a-r
# FOOBAR → f-o-o-b-a-r
</source>
</syntaxhighlight>


==같이 보기==
==같이 보기==
* [[케밥 케이스]]
* [[케밥 케이스]]
* [[함수 snake_case()]]
* [[함수 snake_case()]]

2020년 11월 2일 (월) 02:33 판

1 개요

함수 kebab_case()

2 PHP

function kebab_case($value) {
    if (ctype_lower($value)) return $value;
    $value = preg_replace('/[\s]+/u', '', ucwords(str_replace('_','-',$value)));
    return mb_strtolower(preg_replace('/(.)(?=[A-Z])/u', '$1-', $value), 'UTF-8');
}
$samples = ['foo_bar', 'Foo Bar', 'FooBar', 'fooBar', 'foo bar', 'foo-bar', 'Foobar', 'FOOBAR'];
foreach( $samples as $sample ) {
	echo $sample." → ".kebab_case($sample) . PHP_EOL;
}
# foo_bar → foo-bar
# Foo Bar → foo-bar
# FooBar → foo-bar
# fooBar → foo-bar
# foo bar → foo-bar
# foo-bar → foo-bar
# Foobar → foobar
# FOOBAR → f-o-o-b-a-r

3 Python

import re
def kebab_case(s):
    return re.sub(r"[-_ ]+","-",re.sub(r"^-","",re.sub(r"([A-Z])", r"-\1",s))).lower()

samples = ['foo_bar', 'Foo Bar', 'FooBar', 'fooBar', 'foo bar', 'foo-bar', 'Foobar', 'FOOBAR']
for sample in samples:
    print(sample, '→', kebab_case(sample))
# foo_bar → foo-bar
# Foo Bar → foo-bar
# FooBar → foo-bar
# fooBar → foo-bar
# foo bar → foo-bar
# foo-bar → foo-bar
# Foobar → foobar
# FOOBAR → f-o-o-b-a-r

4 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}