PageRenderTime 67ms CodeModel.GetById 30ms RepoModel.GetById 1ms app.codeStats 0ms

/open-dm-dq/standardizer/other/scripts/set.awk

https://bitbucket.org/pymma/mosaic
AWK | 20 lines | 19 code | 1 blank | 0 comment | 0 complexity | 6457ac0c4eeecef6eeca195e86cee2b0 MD5 | raw file
Possible License(s): BSD-3-Clause, LGPL-2.0
  1. /address\.set[A-Z]/ {
  2. tokens = gensub(/.*address\.set([A-Za-z]+)\((.*)\);/, "\\1|\\2", "g")
  3. split(tokens, arr, "|")
  4. propertyName = arr[1]
  5. propertyValue = arr[2]
  6. propertySymbol = ""
  7. for (i = 1; i <= length(propertyName); i++) {
  8. letter = substr(propertyName, i, 1)
  9. if (i > 1 && letter >= "A" && letter <= "Z") {
  10. propertySymbol = propertySymbol "_"
  11. }
  12. if (letter >= "a" && letter <= "z") {
  13. letter = toupper(letter)
  14. }
  15. propertySymbol = propertySymbol letter
  16. }
  17. gsub(/address.set[A-Za-z]+\(.*\);/, "address.set(Address." propertySymbol ", " propertyValue ");")
  18. }
  19. { print }