簡體   English   中英

合金:用於弦

[英]Alloy: use to String

如何在合金中計算琴弦的長度?

如果我想說密碼必須至少包含8個字符,我該如何表示該字符串的長度?

我對密碼的簽名是:

sig密碼{密碼:一個字符串}

合金中的String幾乎和其他信號一樣。 唯一的區別是您可以將字符串文字分配給String類型的字段,例如,

some p: Password | p.password = "secret"

Alloy中不支持任何字符串函數。 解決像

some p: Password | len[p.password] > 5

需要專門的弦求解器,而Alloy則不需要。

如果您只關心密碼長度,則可以執行以下操作

sig Char {}
sig Password { 
   password: seq Char 
} { 
   #password > 5
}

如果您需要能夠解決更復雜的字符串約束(包括正則表達式),則應研究專門的字符串求解器,例如Hampi

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM