SlideShare a Scribd company logo
CHAPTER
TWENTYEIGHT
DATE AND TIME
In this chapter we are going to learn about the date and time functions.
28.1 Clock() Function
Syntax:
Clock() ---> The number of clock ticks from program start
Example:
See "Calculate performance" + nl
t1 = clock()
for x = 1 to 1000000 next
see clock() - t1
28.2 ClocksPerSecond() Function
Return how many clocks in one second
Syntax:
clockspersecond() ---> Number of clocks in one second
Example:
# Wait 1 second
t = clock()
while clock() - t <= clockspersecond() end
28.3 Time() Function
We can get the system time using the Time() function.
Example:
See "Time : " + time()
195
Ring Documentation, Release 1.5.2
28.4 Date() Function
We can get the date using the Date() function.
Syntax:
Date() ---> String represent the date "dd/mm/yyyy"
Example:
See "Date : " + date() # Date : 24/05/2015
28.5 TimeList() Function
We can print the date and the time information using the TimeList() function.
Syntax:
TimeList() ---> List contains the time and date information.
The next table presents the list items
index value
1 abbreviated weekday name
2 full weekday name
3 abbreviated month name
4 full month name
5 Date & Time
6 Day of the month
7 Hour (24)
8 Hour (12)
9 Day of the year
10 Month of the year
11 Minutes after hour
12 AM or PM
13 Seconds after the hour
14 Week of the year (sun-sat)
15 day of the week
16 date
17 time
18 year of the century
19 year
20 time zone
21 percent sign
Example:
/* Output:
** Sun abbreviated weekday name
** Sunday full weekday name
** May abbreviated month name
** May full month name
** 05/24/15 09:58:38 Date & Time
** 24 Day of the month
** 09 Hour (24)
28.4. Date() Function 196
Ring Documentation, Release 1.5.2
** 09 Hour (12)
** 144 Day of the year
** 05 Month of the year
** 58 Minutes after hour
** AM AM or PM
** 38 Seconds after the hour
** 21 Week of the year (sun-sat)
** 0 day of the week
** 05/24/15 date
** 09:58:38 time
** 15 year of the century
** 2015 year
** Arab Standard Time time zone
** % percent sign
*/
See TimeList()
Example:
See "Day Name : " + TimeList()[2] # Sunday
Example:
See "Month Name : " + TimeList()[4] # May
28.6 AddDays() Function
Syntax:
AddDays(cDate,nDays) ---> Date from cDate and after nDays
Example:
cDate = date()
see cDate + nl # 24/05/2015
cDate = adddays(cDate,10)
see cDate + nl # 03/06/2015
28.7 DiffDays() Function
Syntax:
DiffDays(cDate1,cDate2) ---> number of days (Date1 - Date2)
Example:
cDate1 = date()
see cDate1 + nl # 24/05/2015
cDate2 = adddays(cDate1,10)
see cDate2 + nl # 03/06/2015
see "DiffDays = " + diffdays(cDate1,cDate2) + nl # -10
see "DiffDays = " + diffdays(cDate2,cDate1) + nl # 10
28.6. AddDays() Function 197
Ring Documentation, Release 1.5.2
28.8 EpochTime() Function
Syntax:
EpochTime( cDate, cTime ) ---> Epoch Seconds
Example:
###-------------------------------------------------------------
# EpochTime()
# Example --- EpochSec = EpochTime( Date(), Time() )
# Call Format: EpochSec = EpochTime( "15/07/2016", "10:15:30" )
# EpochSec = 1468577730
#---------------------------------------------------------------
Func EpochTime(Date, Time)
arrayDate = split(Date, "/")
arrayTime = split(Time, ":")
Year = arrayDate[3] ; Month = arrayDate[2] ; Day = arrayDate[1]
Hour = arrayTime[1] ; Minute = arrayTime[2] ; Second = arrayTime[3]
cDate1 = Day +"/"+ Month +"/"+ Year
cDate2 = "01/01/" + Year
DayOfYear = DiffDays( cDate1, cDate2)
### Formula
tm_sec = Second * 1
tm_min = Minute * 60
tm_hour = Hour * 3600
tm_yday = DayOfYear * 86400
tm_year = Year - 1900
tm_year1 = ( tm_year - 70) * 31536000
tm_year2 = ( floor(( tm_year - 69) / 4 )) * 86400
tm_year3 = ( floor(( tm_year - 1) / 100 )) * 86400
tm_year4 = ( floor(( tm_year + 299) / 400 )) * 86400
### Result
EpochSec = tm_sec + tm_min + tm_hour + tm_yday + tm_year1 + tm_year2 - tm_year3 + tm_year4
return EpochSec
28.8. EpochTime() Function 198
CHAPTER
TWENTYNINE
CHECK DATA TYPE AND CONVERSION
In this chapter we are going to learn about the functions that can be used for
• Checking Data Type
• Checking Character
• Conversion
29.1 Check Data Type
The next functions can be used to check the data type
• isstring()
• isnumber()
• islist()
• type()
• isnull()
29.2 IsString() Function
Using the IsString() function we can know if the value is a string or not
Syntax:
IsString(value) ---> 1 if the value is a string or 0 if not
Example:
see isstring(5) + nl + # print 0
isstring("hello") + nl # print 1
29.3 IsNumber() Function
Using the IsNumber() function we can know if the value is a number or not
Syntax:
199
Ring Documentation, Release 1.5.2
IsNumber(value) ---> 1 if the value is a number or 0 if not
Example:
see isnumber(5) + nl + # print 1
isnumber("hello") + nl # print 0
29.4 IsList() Function
Using the IsList() function we can know if the value is a list or not
Syntax:
IsList(value) ---> 1 if the value is a list or 0 if not
Example:
see islist(5) + nl + # print 0
islist("hello") + nl + # print 0
islist([1,3,5]) # print 1
29.5 Type() Function
We can know the type of a value using the Type() Function.
Syntax:
Type(value) ---> The Type as String
Example:
see Type(5) + nl + # print NUMBER
Type("hello") + nl + # print STRING
Type([1,3,5]) # print LIST
29.6 IsNULL() Function
We can check the value to know if it’s null or not using the IsNULL() function
Syntax:
IsNULL(value) ---> 1 if the value is NULL or 0 if not
Example:
see isnull(5) + nl + # print 0
isnull("hello") + nl + # print 0
isnull([1,3,5]) + nl + # print 0
isnull("") + nl + # print 1
isnull("NULL") # print 1
29.4. IsList() Function 200
Ring Documentation, Release 1.5.2
29.7 Check Character
The next functions can be used to check character
• isalnum()
• isalpha()
• iscntrl()
• isdigit()
• isgraph()
• islower()
• isprint()
• ispunct()
• isspace()
• isupper()
• isxdigit()
29.8 IsAlNum() Function
We can test a character or a string using the IsAlNum() Function
Syntax:
IsAlNum(value) ---> 1 if the value is digit/letter or 0 if not
Example:
see isalnum("Hello") + nl + # print 1
isalnum("123456") + nl + # print 1
isalnum("ABCabc123") + nl + # print 1
isalnum("How are you") # print 0 because of spaces
29.9 IsAlpha() Function
We can test a character or a string using the IsAlpha() Function
Syntax:
IsAlpha(value) ---> 1 if the value is a letter or 0 if not
Example:
see isalpha("Hello") + nl + # print 1
isalpha("123456") + nl + # print 0
isalpha("ABCabc123") + nl + # print 0
isalpha("How are you") # print 0
29.7. Check Character 201
Ring Documentation, Release 1.5.2
29.10 IsCntrl() Function
We can test a character or a string using the IsCntrl() Function
Syntax:
IsCntrl(value) ---> 1 if the value is a control character (no printing position) or 0 if not
Example:
See iscntrl("hello") + nl + # print 0
iscntrl(nl) # print 1
29.11 IsDigit() Function
We can test a character or a string using the IsDigit() Function
Syntax:
IsDigit(value) ---> 1 if the value is a digit or 0 if not
Example:
see isdigit("0123456789") + nl + # print 1
isdigit("0123a") # print 0
29.12 IsGraph() Function
We can test a character or a string using the IsGraph() Function
Syntax:
IsGraph(value) ---> 1 if the value can be printed (Except space) or 0 if not
Example:
see isgraph("abcdef") + nl + # print 1
isgraph("abc def") # print 0
29.13 IsLower() Function
We can test a character or a string using the IsLower() Function
Syntax:
IsLower(value) ---> 1 if the value is lowercase letter or 0 if not
Example:
see islower("abcDEF") + nl + # print 0
islower("ghi") # print 1
29.10. IsCntrl() Function 202
Ring Documentation, Release 1.5.2
29.14 IsPrint() Function
We can test a character or a string using the IsPrint() Function
Syntax:
IsPrint(value) ---> 1 if the value occupies a printing position or 0 if not
Example:
see isprint("Hello") + nl + # print 1
isprint("Nice to see you") + nl + # print 1
isprint(nl) # print 0
29.15 IsPunct() Function
We can test a character or a string using the IsPunct() Function
Syntax:
IsPunct(value) ---> 1 if the value is a punctuation character or 0 if not
Example:
see ispunct("hello") + nl + # print 0
ispunct(",") # print 1
29.16 IsSpace() Function
We can test a character or a string using the IsSpace() Function
Syntax:
IsSpace(value) ---> 1 if the value is a white-space or 0 if not
Example:
see isspace(" ") + nl + # print 1
isspace("test") # print 0
29.17 IsUpper() Function
We can test a character or a string using the IsUpper() Function
Syntax:
IsUpper(value) ---> 1 if the value is an uppercase alphabetic letter or 0 if not
Example:
see isupper("welcome") + nl + # print 0
isupper("WELCOME") # print 1
29.14. IsPrint() Function 203
Ring Documentation, Release 1.5.2
29.18 IsXdigit() Function
We can test a character or a string using the IsXdigit() Function
Syntax:
IsXdigit(value) ---> 1 if the value is a hexdecimal digit character or 0 if not
Example:
see isxdigit("0123456789abcdef") + nl + # print 1
isxdigit("123z") # print 0
29.19 Conversion
The next functions can be used for conversion
• number()
• string()
• ascii()
• char()
• hex()
• dec()
• str2hex()
• hex2str()
29.20 Number() Function
We can convert strings to numbers using the Number() function or the + operator.
Syntax:
Number(string) ---> Number
0 + string ---> Number
Example:
see number("5") + 5 + nl # print 10
see 0 + "10" + 2 # print 12
29.21 String() Function
We can convert numbers to strings using the String() function or the + operator.
Syntax:
String(number) ---> String
"" + number ---> String
29.18. IsXdigit() Function 204

More Related Content

PDF
The Ring programming language version 1.10 book - Part 32 of 212
PDF
The Ring programming language version 1.5.4 book - Part 24 of 185
PDF
The Ring programming language version 1.4 book - Part 6 of 30
PDF
The Ring programming language version 1.3 book - Part 15 of 88
PDF
The Ring programming language version 1.7 book - Part 27 of 196
PDF
The Ring programming language version 1.5.1 book - Part 22 of 180
PDF
The Ring programming language version 1.2 book - Part 13 of 84
PDF
The Ring programming language version 1.8 book - Part 29 of 202
The Ring programming language version 1.10 book - Part 32 of 212
The Ring programming language version 1.5.4 book - Part 24 of 185
The Ring programming language version 1.4 book - Part 6 of 30
The Ring programming language version 1.3 book - Part 15 of 88
The Ring programming language version 1.7 book - Part 27 of 196
The Ring programming language version 1.5.1 book - Part 22 of 180
The Ring programming language version 1.2 book - Part 13 of 84
The Ring programming language version 1.8 book - Part 29 of 202

What's hot (20)

PDF
The Ring programming language version 1.5.3 book - Part 24 of 184
PDF
The Ring programming language version 1.9 book - Part 31 of 210
PDF
The Ring programming language version 1.6 book - Part 26 of 189
PDF
The Ring programming language version 1.5.4 book - Part 23 of 185
PDF
The Ring programming language version 1.3 book - Part 13 of 88
PDF
The Ring programming language version 1.5.3 book - Part 22 of 184
PDF
The Ring programming language version 1.5.2 book - Part 22 of 181
PDF
The Ring programming language version 1.5.4 book - Part 22 of 185
PDF
The Ring programming language version 1.2 book - Part 12 of 84
PDF
The Ring programming language version 1.7 book - Part 26 of 196
PDF
The Ring programming language version 1.2 book - Part 11 of 84
PDF
The Ring programming language version 1.9 book - Part 27 of 210
PDF
The Ring programming language version 1.3 book - Part 32 of 88
PDF
The Ring programming language version 1.2 book - Part 10 of 84
PDF
The Ring programming language version 1.2 book - Part 9 of 84
PDF
The Ring programming language version 1.8 book - Part 25 of 202
PDF
The Ring programming language version 1.4 book - Part 29 of 30
PDF
The Ring programming language version 1.6 book - Part 44 of 189
PDF
The Ring programming language version 1.10 book - Part 31 of 212
PDF
The Ring programming language version 1.10 book - Part 28 of 212
The Ring programming language version 1.5.3 book - Part 24 of 184
The Ring programming language version 1.9 book - Part 31 of 210
The Ring programming language version 1.6 book - Part 26 of 189
The Ring programming language version 1.5.4 book - Part 23 of 185
The Ring programming language version 1.3 book - Part 13 of 88
The Ring programming language version 1.5.3 book - Part 22 of 184
The Ring programming language version 1.5.2 book - Part 22 of 181
The Ring programming language version 1.5.4 book - Part 22 of 185
The Ring programming language version 1.2 book - Part 12 of 84
The Ring programming language version 1.7 book - Part 26 of 196
The Ring programming language version 1.2 book - Part 11 of 84
The Ring programming language version 1.9 book - Part 27 of 210
The Ring programming language version 1.3 book - Part 32 of 88
The Ring programming language version 1.2 book - Part 10 of 84
The Ring programming language version 1.2 book - Part 9 of 84
The Ring programming language version 1.8 book - Part 25 of 202
The Ring programming language version 1.4 book - Part 29 of 30
The Ring programming language version 1.6 book - Part 44 of 189
The Ring programming language version 1.10 book - Part 31 of 212
The Ring programming language version 1.10 book - Part 28 of 212
Ad

Similar to The Ring programming language version 1.5.2 book - Part 23 of 181 (20)

PDF
The Ring programming language version 1.4.1 book - Part 6 of 31
PDF
The Ring programming language version 1.5.3 book - Part 23 of 184
PDF
The Ring programming language version 1.6 book - Part 25 of 189
PDF
The Ring programming language version 1.9 book - Part 30 of 210
PDF
The Ring programming language version 1.6 book - Part 37 of 189
PDF
The Ring programming language version 1.5.2 book - Part 36 of 181
PDF
The Ring programming language version 1.5.1 book - Part 35 of 180
PDF
The Ring programming language version 1.8 book - Part 28 of 202
PDF
The Ring programming language version 1.6 book - Part 39 of 189
PDF
The Ring programming language version 1.8 book - Part 39 of 202
PDF
The Ring programming language version 1.5.4 book - Part 35 of 185
PDF
The Ring programming language version 1.5.1 book - Part 32 of 180
PDF
The Ring programming language version 1.5.4 book - Part 37 of 185
PDF
The Ring programming language version 1.8 book - Part 40 of 202
PDF
The Ring programming language version 1.2 book - Part 24 of 84
PDF
The Ring programming language version 1.5.2 book - Part 34 of 181
PDF
The Ring programming language version 1.7 book - Part 38 of 196
PDF
The Ring programming language version 1.4 book - Part 7 of 30
PDF
The Ring programming language version 1.2 book - Part 26 of 84
PDF
The Ring programming language version 1.9 book - Part 42 of 210
The Ring programming language version 1.4.1 book - Part 6 of 31
The Ring programming language version 1.5.3 book - Part 23 of 184
The Ring programming language version 1.6 book - Part 25 of 189
The Ring programming language version 1.9 book - Part 30 of 210
The Ring programming language version 1.6 book - Part 37 of 189
The Ring programming language version 1.5.2 book - Part 36 of 181
The Ring programming language version 1.5.1 book - Part 35 of 180
The Ring programming language version 1.8 book - Part 28 of 202
The Ring programming language version 1.6 book - Part 39 of 189
The Ring programming language version 1.8 book - Part 39 of 202
The Ring programming language version 1.5.4 book - Part 35 of 185
The Ring programming language version 1.5.1 book - Part 32 of 180
The Ring programming language version 1.5.4 book - Part 37 of 185
The Ring programming language version 1.8 book - Part 40 of 202
The Ring programming language version 1.2 book - Part 24 of 84
The Ring programming language version 1.5.2 book - Part 34 of 181
The Ring programming language version 1.7 book - Part 38 of 196
The Ring programming language version 1.4 book - Part 7 of 30
The Ring programming language version 1.2 book - Part 26 of 84
The Ring programming language version 1.9 book - Part 42 of 210
Ad

More from Mahmoud Samir Fayed (20)

PDF
The Ring programming language version 1.10 book - Part 212 of 212
PDF
The Ring programming language version 1.10 book - Part 211 of 212
PDF
The Ring programming language version 1.10 book - Part 210 of 212
PDF
The Ring programming language version 1.10 book - Part 208 of 212
PDF
The Ring programming language version 1.10 book - Part 207 of 212
PDF
The Ring programming language version 1.10 book - Part 205 of 212
PDF
The Ring programming language version 1.10 book - Part 206 of 212
PDF
The Ring programming language version 1.10 book - Part 204 of 212
PDF
The Ring programming language version 1.10 book - Part 203 of 212
PDF
The Ring programming language version 1.10 book - Part 202 of 212
PDF
The Ring programming language version 1.10 book - Part 201 of 212
PDF
The Ring programming language version 1.10 book - Part 200 of 212
PDF
The Ring programming language version 1.10 book - Part 199 of 212
PDF
The Ring programming language version 1.10 book - Part 198 of 212
PDF
The Ring programming language version 1.10 book - Part 197 of 212
PDF
The Ring programming language version 1.10 book - Part 196 of 212
PDF
The Ring programming language version 1.10 book - Part 195 of 212
PDF
The Ring programming language version 1.10 book - Part 194 of 212
PDF
The Ring programming language version 1.10 book - Part 193 of 212
PDF
The Ring programming language version 1.10 book - Part 192 of 212
The Ring programming language version 1.10 book - Part 212 of 212
The Ring programming language version 1.10 book - Part 211 of 212
The Ring programming language version 1.10 book - Part 210 of 212
The Ring programming language version 1.10 book - Part 208 of 212
The Ring programming language version 1.10 book - Part 207 of 212
The Ring programming language version 1.10 book - Part 205 of 212
The Ring programming language version 1.10 book - Part 206 of 212
The Ring programming language version 1.10 book - Part 204 of 212
The Ring programming language version 1.10 book - Part 203 of 212
The Ring programming language version 1.10 book - Part 202 of 212
The Ring programming language version 1.10 book - Part 201 of 212
The Ring programming language version 1.10 book - Part 200 of 212
The Ring programming language version 1.10 book - Part 199 of 212
The Ring programming language version 1.10 book - Part 198 of 212
The Ring programming language version 1.10 book - Part 197 of 212
The Ring programming language version 1.10 book - Part 196 of 212
The Ring programming language version 1.10 book - Part 195 of 212
The Ring programming language version 1.10 book - Part 194 of 212
The Ring programming language version 1.10 book - Part 193 of 212
The Ring programming language version 1.10 book - Part 192 of 212

Recently uploaded (20)

PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Electronic commerce courselecture one. Pdf
PPT
Teaching material agriculture food technology
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
KodekX | Application Modernization Development
PDF
Empathic Computing: Creating Shared Understanding
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
Network Security Unit 5.pdf for BCA BBA.
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Unlocking AI with Model Context Protocol (MCP)
Agricultural_Statistics_at_a_Glance_2022_0.pdf
MYSQL Presentation for SQL database connectivity
Spectral efficient network and resource selection model in 5G networks
Digital-Transformation-Roadmap-for-Companies.pptx
Electronic commerce courselecture one. Pdf
Teaching material agriculture food technology
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
sap open course for s4hana steps from ECC to s4
Diabetes mellitus diagnosis method based random forest with bat algorithm
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
KodekX | Application Modernization Development
Empathic Computing: Creating Shared Understanding
Dropbox Q2 2025 Financial Results & Investor Presentation

The Ring programming language version 1.5.2 book - Part 23 of 181

  • 1. CHAPTER TWENTYEIGHT DATE AND TIME In this chapter we are going to learn about the date and time functions. 28.1 Clock() Function Syntax: Clock() ---> The number of clock ticks from program start Example: See "Calculate performance" + nl t1 = clock() for x = 1 to 1000000 next see clock() - t1 28.2 ClocksPerSecond() Function Return how many clocks in one second Syntax: clockspersecond() ---> Number of clocks in one second Example: # Wait 1 second t = clock() while clock() - t <= clockspersecond() end 28.3 Time() Function We can get the system time using the Time() function. Example: See "Time : " + time() 195
  • 2. Ring Documentation, Release 1.5.2 28.4 Date() Function We can get the date using the Date() function. Syntax: Date() ---> String represent the date "dd/mm/yyyy" Example: See "Date : " + date() # Date : 24/05/2015 28.5 TimeList() Function We can print the date and the time information using the TimeList() function. Syntax: TimeList() ---> List contains the time and date information. The next table presents the list items index value 1 abbreviated weekday name 2 full weekday name 3 abbreviated month name 4 full month name 5 Date & Time 6 Day of the month 7 Hour (24) 8 Hour (12) 9 Day of the year 10 Month of the year 11 Minutes after hour 12 AM or PM 13 Seconds after the hour 14 Week of the year (sun-sat) 15 day of the week 16 date 17 time 18 year of the century 19 year 20 time zone 21 percent sign Example: /* Output: ** Sun abbreviated weekday name ** Sunday full weekday name ** May abbreviated month name ** May full month name ** 05/24/15 09:58:38 Date & Time ** 24 Day of the month ** 09 Hour (24) 28.4. Date() Function 196
  • 3. Ring Documentation, Release 1.5.2 ** 09 Hour (12) ** 144 Day of the year ** 05 Month of the year ** 58 Minutes after hour ** AM AM or PM ** 38 Seconds after the hour ** 21 Week of the year (sun-sat) ** 0 day of the week ** 05/24/15 date ** 09:58:38 time ** 15 year of the century ** 2015 year ** Arab Standard Time time zone ** % percent sign */ See TimeList() Example: See "Day Name : " + TimeList()[2] # Sunday Example: See "Month Name : " + TimeList()[4] # May 28.6 AddDays() Function Syntax: AddDays(cDate,nDays) ---> Date from cDate and after nDays Example: cDate = date() see cDate + nl # 24/05/2015 cDate = adddays(cDate,10) see cDate + nl # 03/06/2015 28.7 DiffDays() Function Syntax: DiffDays(cDate1,cDate2) ---> number of days (Date1 - Date2) Example: cDate1 = date() see cDate1 + nl # 24/05/2015 cDate2 = adddays(cDate1,10) see cDate2 + nl # 03/06/2015 see "DiffDays = " + diffdays(cDate1,cDate2) + nl # -10 see "DiffDays = " + diffdays(cDate2,cDate1) + nl # 10 28.6. AddDays() Function 197
  • 4. Ring Documentation, Release 1.5.2 28.8 EpochTime() Function Syntax: EpochTime( cDate, cTime ) ---> Epoch Seconds Example: ###------------------------------------------------------------- # EpochTime() # Example --- EpochSec = EpochTime( Date(), Time() ) # Call Format: EpochSec = EpochTime( "15/07/2016", "10:15:30" ) # EpochSec = 1468577730 #--------------------------------------------------------------- Func EpochTime(Date, Time) arrayDate = split(Date, "/") arrayTime = split(Time, ":") Year = arrayDate[3] ; Month = arrayDate[2] ; Day = arrayDate[1] Hour = arrayTime[1] ; Minute = arrayTime[2] ; Second = arrayTime[3] cDate1 = Day +"/"+ Month +"/"+ Year cDate2 = "01/01/" + Year DayOfYear = DiffDays( cDate1, cDate2) ### Formula tm_sec = Second * 1 tm_min = Minute * 60 tm_hour = Hour * 3600 tm_yday = DayOfYear * 86400 tm_year = Year - 1900 tm_year1 = ( tm_year - 70) * 31536000 tm_year2 = ( floor(( tm_year - 69) / 4 )) * 86400 tm_year3 = ( floor(( tm_year - 1) / 100 )) * 86400 tm_year4 = ( floor(( tm_year + 299) / 400 )) * 86400 ### Result EpochSec = tm_sec + tm_min + tm_hour + tm_yday + tm_year1 + tm_year2 - tm_year3 + tm_year4 return EpochSec 28.8. EpochTime() Function 198
  • 5. CHAPTER TWENTYNINE CHECK DATA TYPE AND CONVERSION In this chapter we are going to learn about the functions that can be used for • Checking Data Type • Checking Character • Conversion 29.1 Check Data Type The next functions can be used to check the data type • isstring() • isnumber() • islist() • type() • isnull() 29.2 IsString() Function Using the IsString() function we can know if the value is a string or not Syntax: IsString(value) ---> 1 if the value is a string or 0 if not Example: see isstring(5) + nl + # print 0 isstring("hello") + nl # print 1 29.3 IsNumber() Function Using the IsNumber() function we can know if the value is a number or not Syntax: 199
  • 6. Ring Documentation, Release 1.5.2 IsNumber(value) ---> 1 if the value is a number or 0 if not Example: see isnumber(5) + nl + # print 1 isnumber("hello") + nl # print 0 29.4 IsList() Function Using the IsList() function we can know if the value is a list or not Syntax: IsList(value) ---> 1 if the value is a list or 0 if not Example: see islist(5) + nl + # print 0 islist("hello") + nl + # print 0 islist([1,3,5]) # print 1 29.5 Type() Function We can know the type of a value using the Type() Function. Syntax: Type(value) ---> The Type as String Example: see Type(5) + nl + # print NUMBER Type("hello") + nl + # print STRING Type([1,3,5]) # print LIST 29.6 IsNULL() Function We can check the value to know if it’s null or not using the IsNULL() function Syntax: IsNULL(value) ---> 1 if the value is NULL or 0 if not Example: see isnull(5) + nl + # print 0 isnull("hello") + nl + # print 0 isnull([1,3,5]) + nl + # print 0 isnull("") + nl + # print 1 isnull("NULL") # print 1 29.4. IsList() Function 200
  • 7. Ring Documentation, Release 1.5.2 29.7 Check Character The next functions can be used to check character • isalnum() • isalpha() • iscntrl() • isdigit() • isgraph() • islower() • isprint() • ispunct() • isspace() • isupper() • isxdigit() 29.8 IsAlNum() Function We can test a character or a string using the IsAlNum() Function Syntax: IsAlNum(value) ---> 1 if the value is digit/letter or 0 if not Example: see isalnum("Hello") + nl + # print 1 isalnum("123456") + nl + # print 1 isalnum("ABCabc123") + nl + # print 1 isalnum("How are you") # print 0 because of spaces 29.9 IsAlpha() Function We can test a character or a string using the IsAlpha() Function Syntax: IsAlpha(value) ---> 1 if the value is a letter or 0 if not Example: see isalpha("Hello") + nl + # print 1 isalpha("123456") + nl + # print 0 isalpha("ABCabc123") + nl + # print 0 isalpha("How are you") # print 0 29.7. Check Character 201
  • 8. Ring Documentation, Release 1.5.2 29.10 IsCntrl() Function We can test a character or a string using the IsCntrl() Function Syntax: IsCntrl(value) ---> 1 if the value is a control character (no printing position) or 0 if not Example: See iscntrl("hello") + nl + # print 0 iscntrl(nl) # print 1 29.11 IsDigit() Function We can test a character or a string using the IsDigit() Function Syntax: IsDigit(value) ---> 1 if the value is a digit or 0 if not Example: see isdigit("0123456789") + nl + # print 1 isdigit("0123a") # print 0 29.12 IsGraph() Function We can test a character or a string using the IsGraph() Function Syntax: IsGraph(value) ---> 1 if the value can be printed (Except space) or 0 if not Example: see isgraph("abcdef") + nl + # print 1 isgraph("abc def") # print 0 29.13 IsLower() Function We can test a character or a string using the IsLower() Function Syntax: IsLower(value) ---> 1 if the value is lowercase letter or 0 if not Example: see islower("abcDEF") + nl + # print 0 islower("ghi") # print 1 29.10. IsCntrl() Function 202
  • 9. Ring Documentation, Release 1.5.2 29.14 IsPrint() Function We can test a character or a string using the IsPrint() Function Syntax: IsPrint(value) ---> 1 if the value occupies a printing position or 0 if not Example: see isprint("Hello") + nl + # print 1 isprint("Nice to see you") + nl + # print 1 isprint(nl) # print 0 29.15 IsPunct() Function We can test a character or a string using the IsPunct() Function Syntax: IsPunct(value) ---> 1 if the value is a punctuation character or 0 if not Example: see ispunct("hello") + nl + # print 0 ispunct(",") # print 1 29.16 IsSpace() Function We can test a character or a string using the IsSpace() Function Syntax: IsSpace(value) ---> 1 if the value is a white-space or 0 if not Example: see isspace(" ") + nl + # print 1 isspace("test") # print 0 29.17 IsUpper() Function We can test a character or a string using the IsUpper() Function Syntax: IsUpper(value) ---> 1 if the value is an uppercase alphabetic letter or 0 if not Example: see isupper("welcome") + nl + # print 0 isupper("WELCOME") # print 1 29.14. IsPrint() Function 203
  • 10. Ring Documentation, Release 1.5.2 29.18 IsXdigit() Function We can test a character or a string using the IsXdigit() Function Syntax: IsXdigit(value) ---> 1 if the value is a hexdecimal digit character or 0 if not Example: see isxdigit("0123456789abcdef") + nl + # print 1 isxdigit("123z") # print 0 29.19 Conversion The next functions can be used for conversion • number() • string() • ascii() • char() • hex() • dec() • str2hex() • hex2str() 29.20 Number() Function We can convert strings to numbers using the Number() function or the + operator. Syntax: Number(string) ---> Number 0 + string ---> Number Example: see number("5") + 5 + nl # print 10 see 0 + "10" + 2 # print 12 29.21 String() Function We can convert numbers to strings using the String() function or the + operator. Syntax: String(number) ---> String "" + number ---> String 29.18. IsXdigit() Function 204