292 | 293 | 294 | 295 | ```go 296 | package main 297 | 298 | import ( 299 | "fmt" 300 | 301 | v2 "github.com/cinar/checker/v2" 302 | ) 303 | 304 | func main() { 305 | name := " Onur Cinar " 306 | 307 | name, err := v2.Check(name, v2.TrimSpace, v2.Required) 308 | if err != nil { 309 | fmt.Println(err) 310 | return 311 | } 312 | 313 | fmt.Println(name) 314 | } 315 | ``` 316 | 317 | #### Output 318 | 319 | ``` 320 | Onur Cinar 321 | ``` 322 | 323 |
324 |337 | 338 | 339 | 340 | ```go 341 | package main 342 | 343 | import ( 344 | "fmt" 345 | 346 | v2 "github.com/cinar/checker/v2" 347 | ) 348 | 349 | func main() { 350 | type Person struct { 351 | Name string `checkers:"trim required"` 352 | } 353 | 354 | person := &Person{ 355 | Name: " Onur Cinar ", 356 | } 357 | 358 | errs, ok := v2.CheckStruct(person) 359 | if !ok { 360 | fmt.Println(errs) 361 | return 362 | } 363 | 364 | fmt.Println(person.Name) 365 | } 366 | ``` 367 | 368 | #### Output 369 | 370 | ``` 371 | Onur Cinar 372 | ``` 373 | 374 |
375 |415 | 416 | 417 | 418 | ```go 419 | package main 420 | 421 | import ( 422 | "fmt" 423 | 424 | v2 "github.com/cinar/checker/v2" 425 | ) 426 | 427 | func main() { 428 | _, err := v2.IsASCII("Checker") 429 | if err != nil { 430 | fmt.Println(err) 431 | } 432 | } 433 | ``` 434 | 435 |
436 |449 | 450 | 451 | 452 | ```go 453 | package main 454 | 455 | import ( 456 | "fmt" 457 | 458 | v2 "github.com/cinar/checker/v2" 459 | ) 460 | 461 | func main() { 462 | _, err := v2.IsAlphanumeric("ABcd1234") 463 | if err != nil { 464 | fmt.Println(err) 465 | } 466 | } 467 | ``` 468 | 469 |
470 |483 | 484 | 485 | 486 | ```go 487 | package main 488 | 489 | import ( 490 | v2 "github.com/cinar/checker/v2" 491 | ) 492 | 493 | func main() { 494 | _, err := v2.IsAmexCreditCard("378282246310005") 495 | 496 | if err != nil { 497 | // Send the errors back to the user 498 | } 499 | } 500 | ``` 501 | 502 |
503 |516 | 517 | 518 | 519 | ```go 520 | package main 521 | 522 | import ( 523 | v2 "github.com/cinar/checker/v2" 524 | ) 525 | 526 | func main() { 527 | _, err := v2.IsAnyCreditCard("6011111111111117") 528 | 529 | if err != nil { 530 | // Send the errors back to the user 531 | } 532 | } 533 | ``` 534 | 535 |
536 |549 | 550 | 551 | 552 | ```go 553 | package main 554 | 555 | import ( 556 | "fmt" 557 | 558 | v2 "github.com/cinar/checker/v2" 559 | ) 560 | 561 | func main() { 562 | _, err := v2.IsCIDR("2001:db8::/32") 563 | if err != nil { 564 | fmt.Println(err) 565 | } 566 | } 567 | ``` 568 | 569 |
570 |583 | 584 | 585 | 586 | ```go 587 | package main 588 | 589 | import ( 590 | "fmt" 591 | 592 | v2 "github.com/cinar/checker/v2" 593 | ) 594 | 595 | func main() { 596 | _, err := v2.IsDigits("123456") 597 | if err != nil { 598 | fmt.Println(err) 599 | } 600 | } 601 | ``` 602 | 603 |
604 |617 | 618 | 619 | 620 | ```go 621 | package main 622 | 623 | import ( 624 | v2 "github.com/cinar/checker/v2" 625 | ) 626 | 627 | func main() { 628 | _, err := v2.IsDinersCreditCard("36227206271667") 629 | 630 | if err != nil { 631 | // Send the errors back to the user 632 | } 633 | } 634 | ``` 635 | 636 |
637 |650 | 651 | 652 | 653 | ```go 654 | package main 655 | 656 | import ( 657 | v2 "github.com/cinar/checker/v2" 658 | ) 659 | 660 | func main() { 661 | _, err := v2.IsDiscoverCreditCard("6011111111111117") 662 | 663 | if err != nil { 664 | // Send the errors back to the user 665 | } 666 | } 667 | ``` 668 | 669 |
670 |683 | 684 | 685 | 686 | ```go 687 | package main 688 | 689 | import ( 690 | "fmt" 691 | 692 | v2 "github.com/cinar/checker/v2" 693 | ) 694 | 695 | func main() { 696 | _, err := v2.IsEmail("test@example.com") 697 | if err != nil { 698 | fmt.Println(err) 699 | } 700 | } 701 | ``` 702 | 703 |
704 |717 | 718 | 719 | 720 | ```go 721 | package main 722 | 723 | import ( 724 | "fmt" 725 | 726 | v2 "github.com/cinar/checker/v2" 727 | ) 728 | 729 | func main() { 730 | _, err := v2.IsFQDN("example.com") 731 | if err != nil { 732 | fmt.Println(err) 733 | } 734 | } 735 | ``` 736 | 737 |
738 |760 | 761 | 762 | 763 | ```go 764 | package main 765 | 766 | import ( 767 | "fmt" 768 | 769 | v2 "github.com/cinar/checker/v2" 770 | ) 771 | 772 | func main() { 773 | _, err := v2.IsHex("0123456789abcdefABCDEF") 774 | if err != nil { 775 | fmt.Println(err) 776 | } 777 | } 778 | ``` 779 | 780 |
781 |794 | 795 | 796 | 797 | ```go 798 | package main 799 | 800 | import ( 801 | "fmt" 802 | 803 | v2 "github.com/cinar/checker/v2" 804 | ) 805 | 806 | func main() { 807 | _, err := v2.IsIP("192.168.1.1") 808 | if err != nil { 809 | fmt.Println(err) 810 | } 811 | } 812 | ``` 813 | 814 |
815 |828 | 829 | 830 | 831 | ```go 832 | package main 833 | 834 | import ( 835 | "fmt" 836 | 837 | v2 "github.com/cinar/checker/v2" 838 | ) 839 | 840 | func main() { 841 | _, err := v2.IsIPv4("192.168.1.1") 842 | if err != nil { 843 | fmt.Println(err) 844 | } 845 | } 846 | ``` 847 | 848 |
849 |862 | 863 | 864 | 865 | ```go 866 | package main 867 | 868 | import ( 869 | "fmt" 870 | 871 | v2 "github.com/cinar/checker/v2" 872 | ) 873 | 874 | func main() { 875 | _, err := v2.IsIPv6("2001:db8::1") 876 | if err != nil { 877 | fmt.Println(err) 878 | } 879 | } 880 | ``` 881 | 882 |
883 |896 | 897 | 898 | 899 | ```go 900 | package main 901 | 902 | import ( 903 | "fmt" 904 | 905 | v2 "github.com/cinar/checker/v2" 906 | ) 907 | 908 | func main() { 909 | _, err := v2.IsISBN("1430248270") 910 | if err != nil { 911 | fmt.Println(err) 912 | } 913 | } 914 | ``` 915 | 916 |
917 |930 | 931 | 932 | 933 | ```go 934 | package main 935 | 936 | import ( 937 | v2 "github.com/cinar/checker/v2" 938 | ) 939 | 940 | func main() { 941 | _, err := v2.IsJcbCreditCard("3530111333300000") 942 | 943 | if err != nil { 944 | // Send the errors back to the user 945 | } 946 | } 947 | ``` 948 | 949 |
950 |963 | 964 | 965 | 966 | ```go 967 | package main 968 | 969 | import ( 970 | "fmt" 971 | 972 | v2 "github.com/cinar/checker/v2" 973 | ) 974 | 975 | func main() { 976 | _, err := v2.IsLUHN("4012888888881881") 977 | if err != nil { 978 | fmt.Println(err) 979 | } 980 | } 981 | ``` 982 | 983 |
984 |1006 | 1007 | 1008 | 1009 | ```go 1010 | package main 1011 | 1012 | import ( 1013 | "fmt" 1014 | 1015 | v2 "github.com/cinar/checker/v2" 1016 | ) 1017 | 1018 | func main() { 1019 | _, err := v2.IsMAC("00:1A:2B:3C:4D:5E") 1020 | if err != nil { 1021 | fmt.Println(err) 1022 | } 1023 | } 1024 | ``` 1025 | 1026 |
1027 |1040 | 1041 | 1042 | 1043 | ```go 1044 | package main 1045 | 1046 | import ( 1047 | v2 "github.com/cinar/checker/v2" 1048 | ) 1049 | 1050 | func main() { 1051 | _, err := v2.IsMasterCardCreditCard("5555555555554444") 1052 | 1053 | if err != nil { 1054 | // Send the errors back to the user 1055 | } 1056 | } 1057 | ``` 1058 | 1059 |
1060 |1073 | 1074 | 1075 | 1076 | ```go 1077 | package main 1078 | 1079 | import ( 1080 | "fmt" 1081 | 1082 | v2 "github.com/cinar/checker/v2" 1083 | ) 1084 | 1085 | func main() { 1086 | _, err := v2.IsRegexp("^[0-9a-fA-F]+$", "ABcd1234") 1087 | if err != nil { 1088 | fmt.Println(err) 1089 | } 1090 | } 1091 | ``` 1092 | 1093 |
1094 |1107 | 1108 | 1109 | 1110 | ```go 1111 | package main 1112 | 1113 | import ( 1114 | v2 "github.com/cinar/checker/v2" 1115 | ) 1116 | 1117 | func main() { 1118 | value := "2024-12-31" 1119 | 1120 | _, err := v2.IsTime("DateOnly", value) 1121 | if err != nil { 1122 | panic(err) 1123 | } 1124 | } 1125 | ``` 1126 | 1127 |
1128 |1132 | 1133 | 1134 | 1135 | ```go 1136 | package main 1137 | 1138 | import ( 1139 | v2 "github.com/cinar/checker/v2" 1140 | ) 1141 | 1142 | func main() { 1143 | rfc3339Layout := "2006-01-02T15:04:05Z07:00" 1144 | 1145 | value := "2024-12-31T10:20:00Z07:00" 1146 | 1147 | _, err := v2.IsTime(rfc3339Layout, value) 1148 | if err != nil { 1149 | panic(err) 1150 | } 1151 | } 1152 | ``` 1153 | 1154 |
1155 |1168 | 1169 | 1170 | 1171 | ```go 1172 | package main 1173 | 1174 | import ( 1175 | "fmt" 1176 | 1177 | v2 "github.com/cinar/checker/v2" 1178 | ) 1179 | 1180 | func main() { 1181 | _, err := v2.IsURL("https://example.com") 1182 | if err != nil { 1183 | fmt.Println(err) 1184 | } 1185 | } 1186 | ``` 1187 | 1188 |
1189 |1202 | 1203 | 1204 | 1205 | ```go 1206 | package main 1207 | 1208 | import ( 1209 | v2 "github.com/cinar/checker/v2" 1210 | ) 1211 | 1212 | func main() { 1213 | _, err := v2.IsUnionPayCreditCard("6200000000000005") 1214 | 1215 | if err != nil { 1216 | // Send the errors back to the user 1217 | } 1218 | } 1219 | ``` 1220 | 1221 |
1222 |1235 | 1236 | 1237 | 1238 | ```go 1239 | package main 1240 | 1241 | import ( 1242 | v2 "github.com/cinar/checker/v2" 1243 | ) 1244 | 1245 | func main() { 1246 | _, err := v2.IsVisaCreditCard("4111111111111111") 1247 | 1248 | if err != nil { 1249 | // Send the errors back to the user 1250 | } 1251 | } 1252 | ``` 1253 | 1254 |
1255 |1295 | 1296 | 1297 | 1298 | ```go 1299 | package main 1300 | 1301 | import ( 1302 | "fmt" 1303 | "reflect" 1304 | 1305 | "github.com/cinar/checker/v2/locales" 1306 | 1307 | v2 "github.com/cinar/checker/v2" 1308 | ) 1309 | 1310 | func main() { 1311 | locales.EnUSMessages["NOT_FRUIT"] = "Not a fruit name." 1312 | 1313 | v2.RegisterMaker("is-fruit", func(params string) v2.CheckFunc[reflect.Value] { 1314 | return func(value reflect.Value) (reflect.Value, error) { 1315 | stringValue := value.Interface().(string) 1316 | 1317 | if stringValue == "apple" || stringValue == "banana" { 1318 | return value, nil 1319 | } 1320 | 1321 | return value, v2.NewCheckError("NOT_FRUIT") 1322 | } 1323 | }) 1324 | 1325 | type Item struct { 1326 | Name string `checkers:"is-fruit"` 1327 | } 1328 | 1329 | person := &Item{ 1330 | Name: "banana", 1331 | } 1332 | 1333 | err, ok := v2.CheckStruct(person) 1334 | if !ok { 1335 | fmt.Println(err) 1336 | } 1337 | } 1338 | ``` 1339 | 1340 |
1341 |