Dart Utils Package
๐ ๋ชฉ์ฐจ
๐ ๊ฐ์
์ค๋ช
- ๋ด๊ฐ ์ฌ์ฉํ๋ ค๊ณ ๋ง๋ ์ ๋๋ค.
- ํ์ํ ๊ธฐ๋ฅ์ด ์๋ค๋ฉด ๋ง์๋๋ก ์ฌ์ฉํ์ ๋ ๊ด์ฐฎ์ต๋๋ค.
์์
- ๊ฐ๋ฐ ํธ์์ฑ์ ํฅ์ํ ์ ์์ต๋๋ค.
- ์๋ก ๋ค๋ฅธ ํ๋ก์ ํธ์ ๋ฒ์ฉ์ ์ผ๋ก ์ฌ์ฉ๋ ์ ์์ต๋๋ค.
- ํ์ ์ ๊ฐ์ ๊ธฐ๋ฅ์ ํ๋ ์ฝ๋๋ฅผ ๊ฐ์ ๊ฐ๋ฐํ๋ ๋ฑ์ ๊ฐ๋ฐ๋ ฅ ๋ญ๋น๋ฅผ ์ต์ํ ํ ์ ์์ต๋๋ค.
๐ง ๊ธฐ๋ฅ
๋
ผ๋ฆฌ ์๋ฃํ bool ๊ด๋ จ
Extension
-
toInt: int- Getter๋ ผ๋ฆฌ ์๋ฃํ
bool์ ์ ์ ์๋ฃํint๋ก ๋ณํํฉ๋๋ค.void main() { print(true.toInt); // 1 print(false.toInt); // 0 }
๋ ์ง ๋ฐ ์๊ฐ DateTime ๊ด๋ จ
Extension
-
toMillis: int- GetterUnix Epoch ๊ธฐ์ค ๋ฐ๋ฆฌ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
void main() { print(DateTime.now().toMillis); // 1732804031349 } -
ignoreTime: DateTime- GetterDateTime์ ์๊ฐ๋ถ๋ฅผ ์ ์ธํฉ๋๋ค.void main() { print(DateTime.now().ignoreTime); // 2024-11-28 00:00:00.000 } -
age: int- Getterํด๋น ์๊ฐ์ ํ์ด๋ ์ฌ๋์ ๋ง ๋์ด๋ฅผ ๊ณ์ฐํฉ๋๋ค.
void main() { print(DateTime(2000, 01, 01).age); // 25 (2025๋ ๊ธฐ์ค) print(DateTime(1976, 03, 18).age); // 49 (2025๋ ๊ธฐ์ค) } -
generation: int- Getterํด๋น ์๊ฐ์ ํ์ด๋ ์ฌ๋์ ์ธ๋๋ฅผ ๊ณ์ฐํฉ๋๋ค.
void main() { print(DateTime(2000, 01, 01).generation); // 20 (2025๋ ๊ธฐ์ค) print(DateTime(1976, 03, 18).generation); // 40 (2025๋ ๊ธฐ์ค) } -
wd: Weekday- Getter
ํด๋น ๋ ์ง์ ์์ผ Weekday ๋ฅผ ๋ฐํํฉ๋๋ค.
void main() {
print(DateTime.now().wd); // Weekday.thursday
}
Enum
-
Weekdayvoid main() { var weekday = Weekday.monday; print(weekday.short); // m print(weekday.middle); // mon print(weekday.long); // monday print(weekday.shortKorean); // ์ print(weekday.longKorean); // ์์์ผ }
๋ฐฐ์ด List ๊ด๋ จ
Extension
-
addIf(bool, T): void: Method๋งค๊ฐ๋ณ์
| ์๋ฃํ | ๋ณ์๋ช | ์ค๋ช |
|---|---|---|
bool |
condition | ์กฐ๊ฑด์ |
T |
element | ์ถ๊ฐํ ์์ |
void main() {
List<int> list = [0];
list.addIf(list.sum < 5, list.last + 1);
print(list); // [0, 1]
list.addIf(list.sum < 5, list.last + 1);
print(list); // [0, 1, 2]
list.addIf(list.sum < 5, list.last + 1);
print(list); // [0, 1, 2, 3]
list.addIf(list.sum < 5, list.last + 1);
print(list); // [0, 1, 2, 3]
}
์ซ์ num, int, double ๊ด๋ จ
Extension
Num List Extension
-
sum: num- Getter๋ฆฌ์คํธ์ ๋ชจ๋ ์์๋ฅผ ํฉ์ฐํ์ฌ ๋ฐํํฉ๋๋ค.
void main() { print([1, 2, 3].sum); // 6 print([].sum); // 0 } -
average: num- Getter๋ฆฌ์คํธ์ ์์๋ค์ ํ๊ท ๊ฐ์ ๋ฐํํฉ๋๋ค. ๋ฆฌ์คํธ๊ฐ ๋น์ด ์๋ ๊ฒฝ์ฐ
0์ ๋ฐํํฉ๋๋ค.void main() { print([1, 2, 3].average); // 2 print([].average); // 0 }
Int Extension
-
toBool: bool- Getter์ ์ ์๋ฃํ
int์ ๋ ผ๋ฆฌ ์๋ฃํbool๋ก ๋ณํํฉ๋๋ค.void main() { print(1.toBool); // true print(0.toBool); // false print(-50.toBool); // true } -
asCurrency: String- Getter์ ์๋ฅผ ์ธ ์๋ฆฌ๋ง๋ค ์ผํ๋ก ๊ตฌ๋ถ๋ ํตํ ํ์์ ๋ฌธ์์ด๋ก ๋ณํํฉ๋๋ค.
void main() { print(123456789.asCurrency); // 123,456,789 print(1000.asCurrency); // 1,000 } -
asKorean: String- Getter์ ์๋ฅผ ํ๊ธ ์ซ์๋ก ๋ณํํฉ๋๋ค.
void main() { print(123.asKorean); // ์ผ์ด์ผ print(4567.asKorean); // ์ฌ์ค์ก์น } -
asHanja({bool gajeunja = false}): String- Method๋งค๊ฐ๋ณ์
์ ์๋ฅผ ํ์๋ก ๋ณํํฉ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๊ฐ์ฒด์๋ฅผ ์ฌ์ฉํฉ๋๋ค.
gajeunja๊ฐtrue๊ฐ์ ๊ฐ์ง ๊ฒฝ์ฐ ๊ฐ์์๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐํํฉ๋๋ค.
| ์๋ฃํ | ๋ณ์๋ช | ์ค๋ช |
|---|---|---|
bool |
gajeunja | ๊ฐ์์ ๋ฐํ ์ฌ๋ถ |
void main() {
print(123.asHanja()); // ไธไบไธ
print(123.asHanja(gajeunja: true)); // ๅฃน่ฒณๅ
}
-
asKoreanWithUnits({bool ignoreIl = true}): String- Method์ ์๋ฅผ ํ๊ธ ์ซ์์ ๋จ์(์ญ, ๋ฐฑ, ์ฒ ๋ฑ)๋ฅผ ํฌํจํ ๋ฌธ์์ด๋ก ๋ณํํฉ๋๋ค.
ignoreIl์ดtrue๊ฐ์ ๊ฐ์ง ๊ฒฝ์ฐ ์ด์ํ์ผ์ ์๋ตํ์ฌ ๋ฐํํฉ๋๋ค. (๊ธฐ๋ณธ๊ฐ:true)void main() { print(11111.asKoreanWithUnits()); // ์ผ๋ง์ฒ๋ฐฑ์ญ์ผ print(11111.asKoreanWithUnits(ignoreIl: false)); // ์ผ๋ง์ผ์ฒ์ผ๋ฐฑ์ผ์ญ์ผ } -
asKoreanCurrency({bool ignoreIl = false, String prefix = '๊ธ ', String suffix = ' ์์ '}): String- Method์ ์๋ฅผ ํ๊ธ ์ซ์์ ํตํ ๋จ์๋ก ๋ณํํฉ๋๋ค.
ignoreIl์ดtrue๊ฐ์ ๊ฐ์ง ๊ฒฝ์ฐ ์ด์ํ์ผ์ ์๋ตํ์ฌ ๋ฐํํฉ๋๋ค. (๊ธฐ๋ณธ๊ฐ:false)
๊ธฐ๋ณธ์ ์ผ๋ก๊ธ ~ ์์ ํ์์ ์ฌ์ฉํ๋ฉฐ, ์ ๋์ฌprefix์ ์ ๋ฏธ์ฌsuffix๋ฅผ ์์ ํ ์ ์์ต๋๋ค.void main() { print(1234.asKoreanCurrency()); // ๊ธ ์ผ์ฒ์ด๋ฐฑ์ผ์ญ์ฌ ์์ print(10000000.asKoreanCurrency()); // ๊ธ ์ผ์ฒ๋ง ์์ } -
asHanjaCurrency({bool gajeunja = true, bool ignoreIl = false, String prefix = '้ ', String suffix = ' ์ๆด'}): String- Method์ ์๋ฅผ ํ์ ์ซ์์ ํตํ ๋จ์๋ก ๋ณํํฉ๋๋ค.
ignoreIl์ดtrue๊ฐ์ ๊ฐ์ง ๊ฒฝ์ฐ ์ด์ํไธ๋๋ๅฃน์ ์๋ตํ์ฌ ๋ฐํํฉ๋๋ค. (๊ธฐ๋ณธ๊ฐ:false)
๊ธฐ๋ณธ์ ์ผ๋ก้ ~ ์ๆดํ์์ ์ฌ์ฉํ๋ฉฐ, ์ ๋์ฌprefix์ ์ ๋ฏธ์ฌsuffix๋ฅผ ์์ ํ ์ ์์ต๋๋ค.
gajeunja๊ฐtrue๊ฐ์ ๊ฐ์ง ๊ฒฝ์ฐ ๊ฐ์์๋ฅผ ์ฌ์ฉํฉ๋๋ค.void main() { print(1234.asHanjaCurrency()); // ้ ๅฃนไป่ฒณไฝฐๅๆพ่ ์ๆด print(1234.asHanjaCurrency(gajeunja: false)); // ้ ไธๅไบ็พไธๅๅ ์ๆด print(1234.asHanjaCurrency(ignoreIl: true)); // ้ ไป่ฒณไฝฐๅๆพ่ ์ๆด print(10000000.asHanjaCurrency()); // ้ ๅฃนไป่ฌ ์ๆด print(10000000.asHanjaCurrency(gajeunja: false)); // ้ ไธๅ่ฌ ์ๆด print(10000000.asHanjaCurrency(ignoreIl: true)); // ้ ไป่ฌ ์ๆด }
Class
NumRange
์ซ์ ์๋ฃํ num ์ ๋ฒ์์ ๋ํ ๋ค์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
์์ฑ์ ๋งค๊ฐ๋ณ์
| ์๋ฃํ | ๋ณ์๋ช | ์ค๋ช |
|---|---|---|
T |
start | ์ต์๊ฐ |
T |
end | ์ต๋๊ฐ |
List<NumRange(T)> |
excludes | ์ ์ธํ ๋ฒ์ ๋ฆฌ์คํธ |
var range = NumRange(1, 10);
var rangeExcludes = NumRange(1, 10, excludes: [
NumRange(3.7, 6.5),
NumRange(8.8, 9.1),
]);
-
start: num- Getter์ต์๊ฐ์ ๋ฐํํฉ๋๋ค.
print(range.start); // 1 print(rangeExcludes.start); // 1 -
end: num- Getter์ต๋๊ฐ์ ๋ฐํํฉ๋๋ค.
print(range.end); // 10 print(rangeExcludes.end); // 10 -
difference: num- Getter์ต์๊ฐ๊ณผ ์ต๋๊ฐ์ ์ฐจ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
print(range.difference); // 9.0 print(rangeExcludes.difference); // 9.0 -
length: T- Getter๋ฒ์์ ๊ธธ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
์ด๋ excludes ์ ํฌํจ๋๋ ๋ฒ์๋ ์ ์ธ๋ฉ๋๋ค.
print(range.length); // 9.0 print(rangeExcludes.length); // 5.900000000000001 -
contains(T): bool- Method๋งค๊ฐ๋ณ์
| ์๋ฃํ | ๋ณ์๋ช | ์ค๋ช |
|---|---|---|
T |
num | ๋ฒ์ ํฌํจ ์ฌ๋ถ๋ฅผ ํ๋จํ ์ซ์ |
print(range.contains(3.8)); // true
print(range.contains(7.6)); // true
print(rangeExcludes.contains(3.8)); // false
print(rangeExcludes.contains(7.6)); // true
-
subRanges: List<NumRange>- Getterexcludes๋ฅผ ์ ์ธํ ๋ถ๋ถ๋ฒ์ ๋ฆฌ์คํธ๋ฅผ ๋ฐํํฉ๋๋ค.print(range.subRanges); // [NumRange(1, 10)] print(rangeExcludes.subRanges); // [NumRange(1, 3.7), NumRange(6.5, 8.8), NumRange(9.1, 10)]
IntRange, DoubleRange
์์ ๋์ผํฉ๋๋ค.
๋ฌธ์์ด String ๊ด๋ จ
Enum
| ์ด๋ฆ | ์์ |
|---|---|
| lowerSnakeCase | 'hello_world' |
| upperSnakeCase | 'HELLO_WORLD' |
| lowerSkewerCase | 'hello-world' |
| upperSkewerCase | 'HELLO-WORLD' |
| pascalCase | 'HelloWorld' |
| camelCase | 'helloWorld' |
| titleCase | 'Hello World' |
| lowerCase | 'hello world' |
| upperCase | 'HELLO WORLD' |
Extension
String Extension
-
reversed: String- Getter๋ฐ์ ๋ ๋ฌธ์์ด์ ๋ฐํํฉ๋๋ค.
void main() { print('Hello World'.reversed); // dlroW olleH }
Korean Extension
-
choseong: String- Getterํ๊ธ ๋ฌธ์์ด์ ์ด์ฑ์ ๋ฐํํฉ๋๋ค.
-
jungseong: String- Getterํ๊ธ ๋ฌธ์์ด์ ์ค์ฑ์ ๋ฐํํฉ๋๋ค.
-
jongseong: String- Getterํ๊ธ ๋ฌธ์์ด์ ์ข ์ฑ์ ๋ฐํํฉ๋๋ค.
-
hasBatchim: bool- Getter1์์ ๋ฌธ์์ ๋ฐ์นจ ์กด์ฌ ์ฌ๋ถ๋ฅผ ๋ฐํํฉ๋๋ค.
์ฃผ์: 1์์ ๋ฌธ์๋ง ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค. (ex.
๋,๋ณ,ํด) -
puleossugi: String- Getterํ๊ธ ๋ฌธ์์ด์ ํ์ด์ฐ๊ธฐํ์ฌ ๋ฐํํฉ๋๋ค.
-
moassugi: String- Getterํ๊ธ ๋ฌธ์์ด์ ๋ชจ์์ฐ๊ธฐํ์ฌ ๋ฐํํฉ๋๋ค.
-
eunNeun: String- Getterํ๊ธ ๋ฌธ์์ด์ ์ด์ด์ง ๋ณด์กฐ์ฌ(์/๋)๋ฅผ ๋ฐํํฉ๋๋ค.
-
eunNeunName: String- Getterํ๊ธ ์ด๋ฆ์ ์ด์ด์ง ๋ณด์กฐ์ฌ(์ด๋/๋)๋ฅผ ๋ฐํํฉ๋๋ค.
-
iGa: String- Getterํ๊ธ ๋ฌธ์์ด์ ์ด์ด์ง ์ฃผ๊ฒฉ์กฐ์ฌ(์ด/๊ฐ)๋ฅผ ๋ฐํํฉ๋๋ค.
-
iGaName: String- Getterํ๊ธ ์ด๋ฆ์ ์ด์ด์ง ์ฃผ๊ฒฉ์กฐ์ฌ(์ด๊ฐ/๊ฐ)๋ฅผ ๋ฐํํฉ๋๋ค.
-
eulReul: String- Getterํ๊ธ ๋ฌธ์์ด์ ์ด์ด์ง ๋ชฉ์ ๊ฒฉ์กฐ์ฌ(์/๋ฅผ)๋ฅผ ๋ฐํํฉ๋๋ค.
-
eulReulName: String- Getterํ๊ธ ์ด๋ฆ์ ์ด์ด์ง ๋ชฉ์ ๊ฒฉ์กฐ์ฌ(์ด๋ฅผ/๋ฅผ)๋ฅผ ๋ฐํํฉ๋๋ค.
-
roEuro: String- Getter์ฅ์๋ฅผ ๋ํ๋ด๋ ํ๊ธ ๋ฌธ์์ด์ ์ด์ด์ง ์กฐ์ฌ(์ผ๋ก/๋ก)๋ฅผ ๋ฐํํฉ๋๋ค.
-
withEunNeun: String- Getterํ๊ธ ๋ฌธ์์ด์ ๋ณด์กฐ์ฌ(์/๋)๋ฅผ ์ด์ด ๋ฐํํฉ๋๋ค.
-
withEunNeunName: String- Getterํ๊ธ ์ด๋ฆ์ ๋ณด์กฐ์ฌ(์ด๋/๋)๋ฅผ ์ด์ด ๋ฐํํฉ๋๋ค.
-
withIGa: String- Getterํ๊ธ ๋ฌธ์์ด์ ์ฃผ๊ฒฉ์กฐ์ฌ(์ด/๊ฐ)๋ฅผ ์ด์ด ๋ฐํํฉ๋๋ค.
-
withIGaName: String- Getterํ๊ธ ์ด๋ฆ์ ์ฃผ๊ฒฉ์กฐ์ฌ(์ด๊ฐ/๊ฐ)๋ฅผ ์ด์ด ๋ฐํํฉ๋๋ค.
-
withEulReul: String- Getterํ๊ธ ๋ฌธ์์ด์ ๋ชฉ์ ๊ฒฉ์กฐ์ฌ(์/๋ฅผ)๋ฅผ ์ด์ด ๋ฐํํฉ๋๋ค.
-
withEulReulName: String- Getterํ๊ธ ์ด๋ฆ์ ๋ชฉ์ ๊ฒฉ์กฐ์ฌ(์ด๋ฅผ/๋ฅผ)๋ฅผ ์ด์ด ๋ฐํํฉ๋๋ค.
-
withRoEuro: String- Getter์ฅ์๋ฅผ ๋ํ๋ด๋ ํ๊ธ ๋ฌธ์์ด์ ์กฐ์ฌ(์ผ๋ก/๋ก)๋ฅผ ์ด์ด ๋ฐํํฉ๋๋ค.
-
isJaeum: String- Getter๊ธธ์ด๊ฐ 1์ธ ํ๊ธ ๋ฌธ์๊ฐ ์์์ธ์ง ์ฌ๋ถ๋ฅผ ๋ฐํํฉ๋๋ค.
-
isMoeum: String- Getter๊ธธ์ด๊ฐ 1์ธ ํ๊ธ ๋ฌธ์๊ฐ ๋ชจ์์ธ์ง ์ฌ๋ถ๋ฅผ ๋ฐํํฉ๋๋ค.
-
isEumjeol: String- Getter๊ธธ์ด๊ฐ 1์ธ ํ๊ธ ๋ฌธ์๊ฐ 1์์ ์ธ์ง ์ฌ๋ถ๋ฅผ ๋ฐํํฉ๋๋ค.
-
isHangeul: String- Getter๋ฌธ์์ด์ด ํ๊ธ์ธ์ง ์ฌ๋ถ๋ฅผ ๋ฐํํฉ๋๋ค.
-
hasHangeul: String- Getter๋ฌธ์์ด์ ํ๊ธ ํฌํจ ์ฌ๋ถ๋ฅผ ๋ฐํํฉ๋๋ค.
-
hasSeparatedJaeumOrMoeum: String- Getter๋ฌธ์์ด์ ๋ ๋ฆฝ์ ์ธ ์๋ชจ ์กด์ฌ ์ฌ๋ถ๋ฅผ ๋ฐํํฉ๋๋ค.
-
containsHangeul(other: String): bool- Method๋ฌธ์์ด์ ํ๊ธ ๋ฌธ์์ด
stringํฌํจ ์ฌ๋ถ๋ฅผ ๋ฐํํฉ๋๋ค.
์ฌ์ฉ๋ฒ
void main() {
print('๊ณ ์์ด'.choseong); // ใฑใ
ใ
print('๊ณ ์์ด'.jungseong); // ใ
ใ
ใ
ฃ
print('๊ณ ์์ด'.jongseong); // ใ
print('๋ฐ'.hasBatchim); // false
print('๋ฐ'.hasBatchim); // true
print('๊ณ ์์ด'.puleossugi); // ใฑใ
ใ
ใ
ใ
ใ
ใ
ฃ
print('ใฑใ
ใ
ใ
ใ
ใ
ใ
ฃ'.moassugi); // ๊ณ ์์ด
print('๊น๋ฐฅ'.eunNeun); // ์
print('๋ก๋ณถ์ด'.eunNeun); // ๋
print('๋ฏผ์ฒ '.eunNeunName); // ์ด๋
print('๊น๋ฐฅ'.iGa); // ์ด
print('๋ก๋ณถ์ด'.iGa); // ๊ฐ
print('๋ฏผ์ฒ '.iGaName); // ์ด๊ฐ
print('๊น๋ฐฅ'.eulReul); // ์
print('๋ก๋ณถ์ด'.eulReul); // ๋ฅผ
print('๋ฏผ์ฒ '.eulReulName); // ์ด๋ฅผ
print('ํ๊ต'.roEuro); // ๋ก
print('๋ณ์'.roEuro); // ์ผ๋ก
print('๊น๋ฐฅ'.withEunNeun); // ๊น๋ฐฅ์
print('๋ก๋ณถ์ด'.withEunNeun); // ๋ก๋ณถ์ด๋
print('๋ฏผ์ฒ '.withEunNeunName); // ๋ฏผ์ฒ ์ด๋
print('๊น๋ฐฅ'.withIGa); // ๊น๋ฐฅ์ด
print('๋ก๋ณถ์ด'.withIGa); // ๋ก๋ณถ์ด๊ฐ
print('๋ฏผ์ฒ '.withIGaName); // ๋ฏผ์ฒ ์ด๊ฐ
print('๊น๋ฐฅ'.withEulReul); // ๊น๋ฐฅ์
print('๋ก๋ณถ์ด'.withEulReul); // ๋ก๋ณถ์ด๋ฅผ
print('๋ฏผ์ฒ '.withEulReulName); // ๋ฏผ์ฒ ์ด๋ฅผ
print('ํ๊ต'.withRoEuro); // ํ๊ต๋ก
print('๋ณ์'.withRoEuro); // ๋ณ์์ผ๋ก
print('ใฑ'.isJaeum); // true
print('ใ
'.isJaeum); // false
print('๊ฐ'.isJaeum); // false
print('ใฑ'.isMoeum); // false
print('ใ
'.isMoeum); // true
print('๊ฐ'.isMoeum); // false
print('ใฑ'.isEumjeol); // false
print('ใ
'.isEumjeol); // false
print('๊ฐ'.isEumjeol); // true
print('ใฑ'.isHangeul); // true
print('ใ
'.isHangeul); // true
print('๊ฐ'.isHangeul); // true
print('๊ฐ์์ง'.isHangeul); // true
print('๊ฐ ์์ง'.isHangeul); // true
print('Dog'.isHangeul); // false
print('Dog๊ฐ์์ง'.isHangeul); // false
print('์๋
World'.hasHangeul); // true
print('Hello World'.hasHangeul); // false
print('์๋
ใ
'.hasSeparatedJaeumOrMoeum); // true
print('์๋
'.hasSeparatedJaeumOrMoeum); // false
print('์ธ์'.containsHangeul('ใ
')); // true
print('์ธ์'.containsHangeul('์ธ')); // true
print('์ธ์'.containsHangeul('์
')); // true
print('์ธ์'.containsHangeul('์ธใ
')); // true
print('์ธ์'.containsHangeul('์ธ์ฌ')); // true
print('์ธ์'.containsHangeul('์ธ์')); // true
print('์ธ์'.contains('ใ
')); // false
print('์ธ์'.contains('์ธ')); // true
print('์ธ์'.contains('์
')); // false
print('์ธ์'.contains('์ธใ
')); // false
print('์ธ์'.contains('์ธ์ฌ')); // false
print('์ธ์'.contains('์ธ์')); // true
}
Class
StringCaseConverter ๋ฌธ์์ด ํ์ ๋ณํ๊ธฐ
์์ฑ์ ๋งค๊ฐ๋ณ์
| ์๋ฃํ | ๋ณ์๋ช | ์ค๋ช |
|---|---|---|
String |
value | ๋ณํํ ์ต์ด ํ ์คํธ |
์ฌ์ฉ๋ฒ
void main() {
print(StringCaseConverter('hello_world').pascalCase); // HelloWorld
print(StringCaseConverter('HELLO_WORLD').pascalCase); // HelloWorld
print(StringCaseConverter('hello-world').pascalCase); // HelloWorld
print(StringCaseConverter('HELLO-WORLD').pascalCase); // HelloWorld
print(StringCaseConverter('HelloWorld').pascalCase); // HelloWorld
print(StringCaseConverter('helloWorld').pascalCase); // HelloWorld
print(StringCaseConverter('Hello World').pascalCase); // HelloWorld
print(StringCaseConverter('hello world').pascalCase); // HelloWorld
print(StringCaseConverter('HELLO WORLD').pascalCase); // HelloWorld
print(StringCaseConverter('hello_world').lowerSnakeCase); // hello_world
print(StringCaseConverter('hello_world').upperSnakeCase); // HELLO_WORLD
print(StringCaseConverter('hello_world').lowerSkewerCase); // hello-world
print(StringCaseConverter('hello_world').upperSkewerCase); // HELLO-WORLD
print(StringCaseConverter('hello_world').pascalCase); // HelloWorld
print(StringCaseConverter('hello_world').camelCase); // helloWorld
print(StringCaseConverter('hello_world').titleCase); // Hello World
print(StringCaseConverter('hello_world').lowerCase); // hello world
print(StringCaseConverter('hello_world').upperCase); // HELLO WORLD
}
๐ ์ฌ์ฉ๋ฒ
์ค์น
pub.dev (๊ถ์ฅ)
dart pub add extify
๋๋ pubspec.yaml ์ ์ง์ ์ถ๊ฐ:
dependencies:
extify: ^1.0.1
GitHub
-
์ต์ ๋ฒ์
dependencies: extify: git: url: https://github.com/seungjoonH/extify.git ref: latest -
ํน์ ๋ฒ์
dependencies: extify: git: url: https://github.com/seungjoonH/extify.git ref: v1.0.1
์์กด์ฑ ์ค์น
dart pub get
์ํฌํธ
import 'package:extify/util.dart';
ํ์ํ ๋ชจ๋๋ง ๊ฐ๋ณ์ ์ผ๋ก ์ํฌํธํ ์๋ ์์ต๋๋ค:
import 'package:extify/string.dart';
import 'package:extify/number.dart';
์ ๋ฐ์ดํธ
dart pub upgrade extify
๐ ์ ๋ฐ์ดํธ ์ ๋ณด
v1.0.1 (2026-02-12)
- ์์ Dart ํจํค์ง๋ก ์ ํ (์ธ๋ถ ์์กด์ฑ ์์ ์ ๊ฑฐ)
toTimestampโtoMillis๋ณ๊ฒฝhasHangeul,moassugi๋ฒ๊ทธ ์์
v1.0.0 (2024-12-01)
- ์ด๊ธฐ ๋ฆด๋ฆฌ์ฆ