Yes it is possible:
{ "trigger": "display", "contents": "display: ${1/(bl|ta)$|(ce|ca|c|co|f|fo|h|he|r|ro)$|.*/?1:inline-:?2:table-/i}${1:Inline-BLock-TAble-List-RUn-in-CEll-CAption-COlumn-Footer-Header-ROw-group/None}${1/(b$)|(i$)|(ru$)|(t$)|(l$)|(bl$)|(ta$)|(ce$)|(ca$)|(c$)|(co$)|(f$)|(fo$)|(h$)|(he$)|(r$)|(ro$)|(n$)|(no$)|.*/?1:lock:?2:nline:?3:n-in:?4:able:?5:ist-item:?6:ock:?7:ble:?8:ll:?9:ption:?10:olumn:?11:lumn-group:?12:ooter-group:?13:oter-group:?14:eader-group:?15:ader-group:?16:ow:?17:w-group:?18:one:?19:ne/i};${1/($)|.*/?1:I BL TA L RU CE CA CO F H RO N/}" },
It displays like this:
display: Inline-BLock-TAble-List-RUn-in-CEll-CAption-COlumn-Footer-Header-ROw-group/None;
with the whole section after display: highlighted. If you press Delete it shows,
display: ;I BL TA L RU CE CA CO F H RO N
indicating the letters you can use. (This last section in the snippet can be removed.) So, typing ‘ta’ will result in:
display: inline-table;
My CSS completions are at my GitHub. There are other variations in this file. For example, using the completion ‘margin4’ will display:
margin: top right bottom left;
If you over-type ‘top’ with ‘10px’ it will result in the following, and I can Tab to add the other pixel values:
margin: 10px rightpx bottompx leftpx;
My JS completions demonstrate other techniques. For example, using ‘alert’ will preprend ‘window’ if appropriate.